// Verilated -*- C++ -*-
// DESCRIPTION: Verilator output: Design implementation internals
// See VSimTop.h for the primary calling header

#include "VSimTop.h"
#include "VSimTop__Syms.h"

#include "verilated_dpi.h"

//==========

VerilatedContext* VSimTop::contextp() {
    return __VlSymsp->_vm_contextp__;
}

void VSimTop::eval_step() {
    VL_DEBUG_IF(VL_DBG_MSGF("+++++TOP Evaluate VSimTop::eval\n"); );
    VSimTop__Syms* __restrict vlSymsp = this->__VlSymsp;  // Setup global symbol table
    VSimTop* const __restrict vlTOPp VL_ATTR_UNUSED = vlSymsp->TOPp;
#ifdef VL_DEBUG
    // Debug assertions
    _eval_debug_assertions();
#endif  // VL_DEBUG
    // Initialize
    if (VL_UNLIKELY(!vlSymsp->__Vm_didInit)) _eval_initial_loop(vlSymsp);
    // Evaluate till stable
    int __VclockLoop = 0;
    QData __Vchange = 1;
    do {
        VL_DEBUG_IF(VL_DBG_MSGF("+ Clock loop\n"););
        vlSymsp->__Vm_activity = true;
        _eval(vlSymsp);
        if (VL_UNLIKELY(++__VclockLoop > 100)) {
            // About to fail, so enable debug to see what's not settling.
            // Note you must run make with OPT=-DVL_DEBUG for debug prints.
            int __Vsaved_debug = Verilated::debug();
            Verilated::debug(1);
            __Vchange = _change_request(vlSymsp);
            Verilated::debug(__Vsaved_debug);
            VL_FATAL_MT("/home/wylu/oscpu/projects/cpu_diff/build/SimTop.v", 5, "",
                "Verilated model didn't converge\n"
                "- See https://verilator.org/warn/DIDNOTCONVERGE");
        } else {
            __Vchange = _change_request(vlSymsp);
        }
    } while (VL_UNLIKELY(__Vchange));
}

void VSimTop::_eval_initial_loop(VSimTop__Syms* __restrict vlSymsp) {
    vlSymsp->__Vm_didInit = true;
    _eval_initial(vlSymsp);
    vlSymsp->__Vm_activity = true;
    // Evaluate till stable
    int __VclockLoop = 0;
    QData __Vchange = 1;
    do {
        _eval_settle(vlSymsp);
        _eval(vlSymsp);
        if (VL_UNLIKELY(++__VclockLoop > 100)) {
            // About to fail, so enable debug to see what's not settling.
            // Note you must run make with OPT=-DVL_DEBUG for debug prints.
            int __Vsaved_debug = Verilated::debug();
            Verilated::debug(1);
            __Vchange = _change_request(vlSymsp);
            Verilated::debug(__Vsaved_debug);
            VL_FATAL_MT("/home/wylu/oscpu/projects/cpu_diff/build/SimTop.v", 5, "",
                "Verilated model didn't DC converge\n"
                "- See https://verilator.org/warn/DIDNOTCONVERGE");
        } else {
            __Vchange = _change_request(vlSymsp);
        }
    } while (VL_UNLIKELY(__Vchange));
}

VL_INLINE_OPT void VSimTop::_combo__TOP__3(VSimTop__Syms* __restrict vlSymsp) {
    VL_DEBUG_IF(VL_DBG_MSGF("+    VSimTop::_combo__TOP__3\n"); );
    VSimTop* const __restrict vlTOPp VL_ATTR_UNUSED = vlSymsp->TOPp;
    // Body
    if (vlTOPp->reset) {
        vlTOPp->io_uart_out_valid = 0U;
    }
}

VL_INLINE_OPT void VSimTop::_sequent__TOP__4(VSimTop__Syms* __restrict vlSymsp) {
    VL_DEBUG_IF(VL_DBG_MSGF("+    VSimTop::_sequent__TOP__4\n"); );
    VSimTop* const __restrict vlTOPp VL_ATTR_UNUSED = vlSymsp->TOPp;
    // Variables
    CData/*6:0*/ __Vtableidx1;
    CData/*5:0*/ __Vtableidx2;
    CData/*1:0*/ __Vdly__SimTop__DOT__ysyx_210448_u_axi_rw__DOT__r_state;
    CData/*7:0*/ __Vdly__SimTop__DOT__ysyx_210448_u_axi_rw__DOT__len;
    CData/*0:0*/ __Vdly__SimTop__DOT__mem_read;
    CData/*2:0*/ __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__s3;
    CData/*0:0*/ __Vdly__SimTop__DOT__mem_write;
    CData/*0:0*/ __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mstatus_mpie;
    CData/*1:0*/ __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mstatus_fs;
    CData/*0:0*/ __Vdlyvset__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs__v0;
    CData/*4:0*/ __Vdlyvdim0__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs__v32;
    CData/*0:0*/ __Vdlyvset__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs__v32;
    QData/*63:0*/ __Vdly__SimTop__DOT__axi_data_read;
    QData/*63:0*/ __Vdly__SimTop__DOT__if_addr;
    QData/*63:0*/ __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc;
    QData/*63:0*/ __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mcycle;
    QData/*63:0*/ __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus;
    QData/*63:0*/ __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus;
    QData/*63:0*/ __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mip;
    QData/*63:0*/ __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__mtime;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs__v32;
    // Body
    __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mcycle 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mcycle;
    __Vdly__SimTop__DOT__mem_write = vlTOPp->SimTop__DOT__mem_write;
    __Vdly__SimTop__DOT__ysyx_210448_u_axi_rw__DOT__len 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__len;
    __Vdly__SimTop__DOT__ysyx_210448_u_axi_rw__DOT__r_state 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__r_state;
    __Vdly__SimTop__DOT__axi_data_read = vlTOPp->SimTop__DOT__axi_data_read;
    __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__mtime 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__mtime;
    __Vdly__SimTop__DOT__mem_read = vlTOPp->SimTop__DOT__mem_read;
    __Vdly__SimTop__DOT__if_addr = vlTOPp->SimTop__DOT__if_addr;
    __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mip 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mip;
    __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus;
    __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mstatus_fs 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mstatus_fs;
    __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mstatus_mpie 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mstatus_mpie;
    __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus;
    __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__s3 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3;
    __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc;
    __Vdlyvset__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs__v0 = 0U;
    __Vdlyvset__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs__v32 = 0U;
    vlSymsp->TOP____024unit.__Vdpiimwrap_v_difftest_ArchFpRegState_TOP____024unit(0U, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL, 0ULL);
    vlSymsp->TOP____024unit.__Vdpiimwrap_v_difftest_ArchIntRegState_TOP____024unit(0U, 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [0U], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [1U], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [2U], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [3U], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [4U], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [5U], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [6U], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [7U], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [8U], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [9U], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [0xaU], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [0xbU], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [0xcU], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [0xdU], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [0xeU], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [0xfU], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [0x10U], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [0x11U], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [0x12U], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [0x13U], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [0x14U], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [0x15U], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [0x16U], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [0x17U], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [0x18U], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [0x19U], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [0x1aU], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [0x1bU], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [0x1cU], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [0x1dU], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [0x1eU], 
                                                                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff
                                                                                [0x1fU]);
    vlSymsp->TOP____024unit.__Vdpiimwrap_v_difftest_TrapEvent_TOP____024unit(0U, (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__trap), 
                                                                             (7U 
                                                                              & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__trap_code)), vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cmt_pc, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cycleCnt, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__instrCnt);
    vlSymsp->TOP____024unit.__Vdpiimwrap_v_difftest_ArchEvent_TOP____024unit(0U, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__intrNO, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cause, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc, (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cmt_inst)));
    vlSymsp->TOP____024unit.__Vdpiimwrap_v_difftest_CSRState_TOP____024unit(0U, 3U, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_diff, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__sstatus_diff, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc_diff, 0ULL, 0ULL, 0ULL, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mtvec_diff, 0ULL, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mcause_diff, 0ULL, 0ULL, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mip_diff, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mie_diff, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mscratch_diff, 0ULL, 0ULL, 0ULL);
    if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cmt_valid) {
        vlSymsp->TOP____024unit.__Vdpiimwrap_v_difftest_InstrCommit_TOP____024unit(0U, 0U, (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cmt_valid), vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cmt_pc, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cmt_inst, 0U, (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__skip), 0U, 0U, (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cmt_wen), vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cmt_wdest, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cmt_wdata);
    }
    __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mcycle 
        = (1ULL + vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mcycle);
    if (vlTOPp->reset) {
        __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mcycle = 0ULL;
    }
    if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__clock_interrupt) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__interrupt_ready2 = 1U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__interrupt) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__interrupt_ready2 = 0U;
    }
    __Vdly__SimTop__DOT__mem_write = ((~ (IData)(vlTOPp->reset)) 
                                      & ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_write_ready) 
                                         | ((~ (IData)(vlTOPp->SimTop__DOT__b_hs)) 
                                            & (IData)(vlTOPp->SimTop__DOT__mem_write))));
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_close = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_wb_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_close 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__close;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__rw_resp = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__r_done) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__rw_resp 
            = ((IData)(vlTOPp->SimTop__DOT__mem_write)
                ? (IData)(vlTOPp->io_memAXI_0_b_bits_resp)
                : (IData)(vlTOPp->io_memAXI_0_r_bits_resp));
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_write = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_wb_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_write 
            = vlTOPp->SimTop__DOT__mem_write;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_i_imm_i = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_i_imm_i = 0U;
    }
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rs2 
        = ((IData)(vlTOPp->reset) ? 0U : ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)
                                           ? 0U : (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs2)));
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_write_ready = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_wb_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_write_ready 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_write_ready;
    }
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rs1 
        = ((IData)(vlTOPp->reset) ? 0U : ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)
                                           ? 0U : (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs1)));
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_open = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_wb_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_open 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_open;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_skip = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_wb_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_skip 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_skip;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_b_imm = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_b_imm = 0U;
    } else {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_b_imm 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_b_imm;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_b_imm 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_b_imm;
    }
    if ((((IData)(vlTOPp->reset) | ((IData)(vlTOPp->SimTop__DOT__mem_write) 
                                    & (0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__w_state)))) 
         | (0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__r_state)))) {
        __Vdly__SimTop__DOT__ysyx_210448_u_axi_rw__DOT__len = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__len_incr_en) {
        __Vdly__SimTop__DOT__ysyx_210448_u_axi_rw__DOT__len 
            = (0xffU & ((IData)(1U) + (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__len)));
    }
    __Vtableidx1 = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__aw_hs) 
                     << 6U) | (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__w_hs) 
                                << 5U) | (((IData)(vlTOPp->SimTop__DOT__b_hs) 
                                           << 4U) | 
                                          (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__w_state) 
                                            << 2U) 
                                           | (((IData)(vlTOPp->SimTop__DOT__mem_write) 
                                               << 1U) 
                                              | (IData)(vlTOPp->reset))))));
    if (vlTOPp->__Vtablechg1[__Vtableidx1]) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__w_state 
            = vlTOPp->__Vtable1_SimTop__DOT__ysyx_210448_u_axi_rw__DOT__w_state
            [__Vtableidx1];
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_skip = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_wb_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_skip 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_csr_skip;
    }
    __Vtableidx2 = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__r_done) 
                     << 5U) | (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__ar_hs) 
                                << 4U) | (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__r_state) 
                                           << 2U) | 
                                          (((IData)(vlTOPp->SimTop__DOT__axi_read_valid) 
                                            << 1U) 
                                           | (IData)(vlTOPp->reset)))));
    if (vlTOPp->__Vtablechg2[__Vtableidx2]) {
        __Vdly__SimTop__DOT__ysyx_210448_u_axi_rw__DOT__r_state 
            = vlTOPp->__Vtable2_SimTop__DOT__ysyx_210448_u_axi_rw__DOT__r_state
            [__Vtableidx2];
    }
    if (vlTOPp->reset) {
        __Vdly__SimTop__DOT__axi_data_read = 0ULL;
    } else if (((2U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__r_state)) 
                & (IData)(vlTOPp->io_memAXI_0_r_valid))) {
        if (((0U != (7U & (IData)(vlTOPp->SimTop__DOT__axi_read_addr))) 
             & ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__addr_end) 
                >> 3U))) {
            __Vdly__SimTop__DOT__axi_data_read = ((1U 
                                                   & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__len))
                                                   ? 
                                                  (vlTOPp->SimTop__DOT__axi_data_read 
                                                   | ((vlTOPp->io_memAXI_0_r_bits_data
                                                       [0U] 
                                                       & (((QData)((IData)(
                                                                           vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__mask[3U])) 
                                                           << 0x20U) 
                                                          | (QData)((IData)(
                                                                            vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__mask[2U])))) 
                                                      << 
                                                      (0x3fU 
                                                       & ((IData)(0x3fU) 
                                                          - 
                                                          (0x38U 
                                                           & ((IData)(vlTOPp->SimTop__DOT__axi_read_addr) 
                                                              << 3U))))))
                                                   : vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__axi_r_data_l);
        } else if ((0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__len))) {
            __Vdly__SimTop__DOT__axi_data_read = vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__axi_r_data_l;
        }
    }
    if ((1U & (~ (IData)(vlTOPp->reset)))) {
        if (((2U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__r_state)) 
             & (IData)(vlTOPp->io_memAXI_0_r_valid))) {
            if (((0U != (7U & (IData)(vlTOPp->SimTop__DOT__axi_read_addr))) 
                 & ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__addr_end) 
                    >> 3U))) {
                vlTOPp->SimTop__DOT__mem_read_data 
                    = vlTOPp->io_memAXI_0_r_bits_data
                    [0U];
            } else if ((0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__len))) {
                vlTOPp->SimTop__DOT__mem_read_data 
                    = vlTOPp->io_memAXI_0_r_bits_data
                    [0U];
            }
        }
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__mtimecmp = 0ULL;
    } else if (vlTOPp->SimTop__DOT__mtimecmp_open) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__mtimecmp 
            = ((0x2004000ULL == (0xfffffffffffffff8ULL 
                                 & vlTOPp->SimTop__DOT__axi_write_addr))
                ? vlTOPp->SimTop__DOT__w_data : (((0x2004000ULL 
                                                   == 
                                                   (0xfffffffffffffff8ULL 
                                                    & vlTOPp->SimTop__DOT__axi_read_addr)) 
                                                  & ((1U 
                                                      == (IData)(vlTOPp->io_memAXI_0_r_bits_id)) 
                                                     & (IData)(vlTOPp->SimTop__DOT__r_hs)))
                                                  ? 
                                                 vlTOPp->io_memAXI_0_r_bits_data
                                                 [0U]
                                                  : 0ULL));
    }
    if (vlTOPp->reset) {
        __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__mtime = 0ULL;
    } else {
        __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__mtime 
            = (1ULL + vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__mtime);
        __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__mtime 
            = ((IData)(vlTOPp->SimTop__DOT__mtime_open)
                ? ((0x200bff8ULL == (0xfffffffffffffff8ULL 
                                     & vlTOPp->SimTop__DOT__axi_write_addr))
                    ? vlTOPp->SimTop__DOT__w_data : 
                   (((0x200bff8ULL == (0xfffffffffffffff8ULL 
                                       & vlTOPp->SimTop__DOT__axi_read_addr)) 
                     & ((1U == (IData)(vlTOPp->io_memAXI_0_r_bits_id)) 
                        & (IData)(vlTOPp->SimTop__DOT__r_hs)))
                     ? vlTOPp->io_memAXI_0_r_bits_data
                    [0U] : 0ULL)) : (1ULL + vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__mtime));
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_mem_read = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_mem_read 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_read;
    }
    vlTOPp->SimTop__DOT__clint_skip = (((IData)(vlTOPp->SimTop__DOT__mtime_open) 
                                        | (IData)(vlTOPp->SimTop__DOT__mtimecmp_open)) 
                                       | ((~ (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__ar_hs) 
                                               & (2U 
                                                  == (IData)(vlTOPp->SimTop__DOT__axi_r_id_o))) 
                                              | (IData)(vlTOPp->SimTop__DOT__b_hs))) 
                                          & (IData)(vlTOPp->SimTop__DOT__clint_skip)));
    __Vdly__SimTop__DOT__mem_read = ((~ (IData)(vlTOPp->reset)) 
                                     & ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__mem_read_open) 
                                        | ((~ ((IData)(vlTOPp->SimTop__DOT__axi_r_hs_o) 
                                               & (2U 
                                                  == (IData)(vlTOPp->SimTop__DOT__axi_r_id_o)))) 
                                           & (IData)(vlTOPp->SimTop__DOT__mem_read))));
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_read_data = 0ULL;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_wb_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_read_data 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_data = 0ULL;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_wb_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_data 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_data;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_zimm = 0U;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_j_imm_j = 0U;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_j_imm = 0U;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_u_imm = 0U;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_i_imm = 0U;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_b_imm_b = 0U;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_w_imm = 0U;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_w_shamt = 0U;
    } else {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_zimm 
            = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)
                ? 0U : ((0x73U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))
                         ? (0x1fU & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst 
                                     >> 0xfU)) : 0U));
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_j_imm_j 
            = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)
                ? 0U : ((0x67U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))
                         ? (0xfffU & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst 
                                      >> 0x14U)) : 0U));
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_j_imm 
            = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)
                ? 0U : ((0x6fU == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))
                         ? (0xfffffU & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst 
                                        >> 0xcU)) : 0U));
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_u_imm 
            = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)
                ? 0U : (((0x37U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst)) 
                         | (0x17U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst)))
                         ? (0xfffffU & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst 
                                        >> 0xcU)) : 0U));
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_i_imm 
            = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)
                ? 0U : ((0x13U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))
                         ? (0xfffU & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst 
                                      >> 0x14U)) : 0U));
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_b_imm_b 
            = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)
                ? 0U : ((0x63U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))
                         ? (0x1fU & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst 
                                     >> 7U)) : 0U));
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_w_imm 
            = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)
                ? 0U : ((0x1bU == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))
                         ? (0xfffU & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst 
                                      >> 0x14U)) : 0U));
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_w_shamt 
            = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)
                ? 0U : ((0x1bU == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))
                         ? (0x3fU & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst 
                                     >> 0x14U)) : 0U));
    }
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_s2 
        = (1U & ((~ (IData)(vlTOPp->reset)) & ((~ (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)) 
                                               & (((((0x13U 
                                                      == 
                                                      (0x7fU 
                                                       & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst)) 
                                                     | (0x33U 
                                                        == 
                                                        (0x7fU 
                                                         & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                                                    | (0x3bU 
                                                       == 
                                                       (0x7fU 
                                                        & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                                                   | (0x1bU 
                                                      == 
                                                      (0x7fU 
                                                       & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst)))
                                                   ? 
                                                  (1U 
                                                   & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst 
                                                      >> 0x1eU))
                                                   : 0U))));
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__shamt 
        = ((IData)(vlTOPp->reset) ? 0U : ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)
                                           ? 0U : (
                                                   (0x13U 
                                                    == 
                                                    (0x7fU 
                                                     & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))
                                                    ? 
                                                   (0x3fU 
                                                    & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst 
                                                       >> 0x14U))
                                                    : 0U)));
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_read = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_wb_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_read 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_csr_read;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_s_imm = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_s_imm 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_s_imm;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_s_imm_s = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_s_imm_s 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_s_imm_s;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_s1 = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_s1 
            = vlTOPp->SimTop__DOT__exe_s1;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_I_imm = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_I_imm 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_I_imm;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_opcode = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_wb_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_opcode 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_opcode;
    }
    if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__clock_interrupt) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__interrupt_ready1 = 1U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_fetched) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__interrupt_ready1 = 0U;
    }
    if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__interrupt) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__csr = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_fetched) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__csr = 1U;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_w_ena = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_wb_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_w_ena 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_w_ena;
    }
    if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__interrupt) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__csr_pc_write = 1U;
    } else if (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_write) 
                & (0x302U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr)))) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__csr_pc_write = 1U;
    } else if (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_write) 
                & (0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr)))) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__csr_pc_write = 1U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_fetched) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__csr_pc_write = 0U;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__sstatus = 0ULL;
    } else if (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_fetched) 
                & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_write))) {
        if (((((((((0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr)) 
                   | (0x305U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                  | (0x300U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                 | (0x341U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                | (0x344U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
               | (0x304U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
              | (0x342U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
             | (0x340U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr)))) {
            if ((0U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                if ((0x305U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                    if ((0x300U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                        if ((0U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs1))) {
                            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__sstatus 
                                = (((QData)((IData)(
                                                    (1U 
                                                     & (IData)(
                                                               (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data 
                                                                >> 0xdU))))) 
                                    << 0x3fU) | ((0x7fffffffffff8000ULL 
                                                  & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data) 
                                                 | (QData)((IData)(
                                                                   (0x6000U 
                                                                    & ((IData)(
                                                                               (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data 
                                                                                >> 0xdU)) 
                                                                       << 0xdU))))));
                        }
                    }
                }
            }
        }
    }
    if (vlTOPp->reset) {
        __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mip = 0ULL;
    } else {
        if (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_fetched) 
             & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_write))) {
            if (((((((((0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr)) 
                       | (0x305U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                      | (0x300U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                     | (0x341U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                    | (0x344U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                   | (0x304U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                  | (0x342U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                 | (0x340U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr)))) {
                if ((0U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                    if ((0x305U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                        if ((0x300U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                            if ((0x341U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                                if ((0x344U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                                    __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mip 
                                        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data;
                                }
                            }
                        }
                    }
                }
            }
        }
        if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__clock_interrupt) {
            if ((0U != vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_inst)) {
                __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mip 
                    = ((0xffffffffffffff00ULL & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mip) 
                       | (QData)((IData)((0x80U | (0x7fU 
                                                   & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mip))))));
            }
        }
    }
    if (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_fetched) 
         | (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_read))) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__wb_stage = 1U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__rw_ready) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__wb_stage = 0U;
    }
    if (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_fetched) 
         & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc_write))) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc_exe 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc_add;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_fetched) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc_exe 
            = (4ULL + vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_pc);
    }
    if (vlTOPp->reset) {
        __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus = 0ULL;
    } else {
        if (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_fetched) 
             & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_write))) {
            if (((((((((0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr)) 
                       | (0x305U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                      | (0x300U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                     | (0x341U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                    | (0x344U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                   | (0x304U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                  | (0x342U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                 | (0x340U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr)))) {
                if ((0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                    __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus 
                        = ((0xffffffffffffe000ULL & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus) 
                           | (QData)((IData)((0x1800U 
                                              | ((0x700U 
                                                  & ((IData)(
                                                             (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus 
                                                              >> 8U)) 
                                                     << 8U)) 
                                                 | (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mstatus_mie) 
                                                     << 7U) 
                                                    | ((0x70U 
                                                        & ((IData)(
                                                                   (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus 
                                                                    >> 4U)) 
                                                           << 4U)) 
                                                       | (7U 
                                                          & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus)))))))));
                    __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mstatus_mpie 
                        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mstatus_mie;
                    __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mstatus_fs 
                        = (3U & (IData)((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus 
                                         >> 0xdU)));
                } else if ((0x305U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                    if ((0x300U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                        if ((0U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs1))) {
                            if ((((0U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs1)) 
                                  & (0U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_rd))) 
                                 | ((IData)((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus 
                                             >> 0xdU)) 
                                    & (0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_rd))))) {
                                __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus 
                                    = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data;
                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mstatus_mie 
                                    = (1U & (IData)(
                                                    (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data 
                                                     >> 3U)));
                                __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mstatus_fs 
                                    = (3U & (IData)(
                                                    (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data 
                                                     >> 0xdU)));
                                __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mstatus_mpie 
                                    = (1U & (IData)(
                                                    (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data 
                                                     >> 7U)));
                            }
                            __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus 
                                = (((QData)((IData)(
                                                    (1U 
                                                     & (IData)(
                                                               (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data 
                                                                >> 0xdU))))) 
                                    << 0x3fU) | (0x7fffffffffffffffULL 
                                                 & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data));
                        }
                    }
                }
            } else if ((0x302U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus 
                    = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__interrupt)
                        ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus
                        : (((QData)((IData)((1U & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mstatus_fs)))) 
                            << 0x3fU) | ((0x7fffffffffff8000ULL 
                                          & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus) 
                                         | (QData)((IData)(
                                                           (0x80U 
                                                            | (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mstatus_fs) 
                                                                << 0xdU) 
                                                               | ((0x700U 
                                                                   & ((IData)(
                                                                              (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus 
                                                                               >> 8U)) 
                                                                      << 8U)) 
                                                                  | ((0x70U 
                                                                      & ((IData)(
                                                                                (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus 
                                                                                >> 4U)) 
                                                                         << 4U)) 
                                                                     | (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mstatus_mpie) 
                                                                         << 3U) 
                                                                        | (7U 
                                                                           & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus))))))))))));
            }
        }
        if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__clock_interrupt) {
            if ((0U != vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_inst)) {
                __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus 
                    = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus;
                __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mstatus_fs 
                    = (3U & (IData)((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus 
                                     >> 0xdU)));
                __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mstatus_mpie 
                    = (1U & (IData)((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus 
                                     >> 3U)));
                __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mstatus_mpie 
                    = (1U & (IData)((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus 
                                     >> 3U)));
                __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus 
                    = ((0x302U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))
                        ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus
                        : ((0x300U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))
                            ? ((0xffffffffffffe000ULL 
                                & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data) 
                               | (QData)((IData)((0x1800U 
                                                  | ((0x700U 
                                                      & ((IData)(
                                                                 (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data 
                                                                  >> 8U)) 
                                                         << 8U)) 
                                                     | ((0x80U 
                                                         & ((IData)(
                                                                    (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data 
                                                                     >> 3U)) 
                                                            << 7U)) 
                                                        | ((0x70U 
                                                            & ((IData)(
                                                                       (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data 
                                                                        >> 4U)) 
                                                               << 4U)) 
                                                           | (7U 
                                                              & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data)))))))))
                            : ((0xffffffffffffe000ULL 
                                & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus) 
                               | (QData)((IData)((0x1800U 
                                                  | ((0x700U 
                                                      & ((IData)(
                                                                 (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus 
                                                                  >> 8U)) 
                                                         << 8U)) 
                                                     | ((0x80U 
                                                         & ((IData)(
                                                                    (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus 
                                                                     >> 3U)) 
                                                            << 7U)) 
                                                        | ((0x70U 
                                                            & ((IData)(
                                                                       (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus 
                                                                        >> 4U)) 
                                                               << 4U)) 
                                                           | (7U 
                                                              & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus)))))))))));
            }
        }
    }
    if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__interrupt) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__csr_pc_add 
            = (0xfffffffffffffffcULL & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mtvec);
    } else if (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_write) 
                & (0x302U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr)))) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__csr_pc_add 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc;
    } else if (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_write) 
                & (0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr)))) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__csr_pc_add 
            = (0xfffffffffffffffcULL & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mtvec);
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_fetched) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__csr_pc_add = 0ULL;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_op2 = 0ULL;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_op2 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_op1 = 0ULL;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_op1 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1;
    }
    if (vlTOPp->reset) {
        __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__s3 = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__mem_read_open) {
        __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__s3 
            = (7U & ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1) 
                     + (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_I_imm)));
    } else if ((1U & (~ ((IData)(vlTOPp->SimTop__DOT__axi_r_hs_o) 
                         & (2U == (IData)(vlTOPp->SimTop__DOT__axi_r_id_o)))))) {
        __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__s3 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3;
    }
    if (vlTOPp->reset) {
        __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc = 0ULL;
    } else {
        if (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_fetched) 
             & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_write))) {
            if (((((((((0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr)) 
                       | (0x305U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                      | (0x300U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                     | (0x341U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                    | (0x344U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                   | (0x304U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                  | (0x342U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                 | (0x340U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr)))) {
                if ((0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                    __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc 
                        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_pc;
                } else if ((0x305U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                    if ((0x300U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                        if ((0x341U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                            if ((0U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs1))) {
                                __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc 
                                    = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data;
                            }
                        }
                    }
                }
            }
        }
        if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__clock_interrupt) {
            if ((0U != vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_inst)) {
                __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc 
                    = ((0x302U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))
                        ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc
                        : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mepc_exe);
            }
        }
    }
    if (vlTOPp->reset) {
        __Vdlyvset__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs__v0 = 1U;
    } else if ((((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
                 | (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_read)) 
                & (0U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))) {
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs__v32 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data;
        __Vdlyvset__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs__v32 = 1U;
        __Vdlyvdim0__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs__v32 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd;
    }
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_t 
        = ((IData)(vlTOPp->reset) ? 0ULL : ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)
                                             ? 0ULL
                                             : ((IData)(vlTOPp->reset)
                                                 ? 0ULL
                                                 : 
                                                (((0x73U 
                                                   == 
                                                   (0x7fU 
                                                    & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))
                                                   ? 1U
                                                   : 0U)
                                                  ? 
                                                 (((((((((0U 
                                                          == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr)) 
                                                         | (0x300U 
                                                            == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr))) 
                                                        | (0x341U 
                                                           == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr))) 
                                                       | (0x305U 
                                                          == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr))) 
                                                      | (0x342U 
                                                         == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr))) 
                                                     | (0x344U 
                                                        == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr))) 
                                                    | (0x304U 
                                                       == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr))) 
                                                   | (0xf14U 
                                                      == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr)))
                                                   ? 
                                                  ((0U 
                                                    == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr))
                                                    ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc
                                                    : 
                                                   ((0x300U 
                                                     == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr))
                                                     ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus
                                                     : 
                                                    ((0x341U 
                                                      == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr))
                                                      ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc
                                                      : 
                                                     ((0x305U 
                                                       == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr))
                                                       ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mtvec
                                                       : 
                                                      ((0x342U 
                                                        == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr))
                                                        ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mcause
                                                        : 
                                                       ((0x344U 
                                                         == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr))
                                                         ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mip
                                                         : 
                                                        ((0x304U 
                                                          == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr))
                                                          ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mie
                                                          : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mhartid)))))))
                                                   : 
                                                  ((0x340U 
                                                    == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr))
                                                    ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mscratch
                                                    : 
                                                   ((0xb00U 
                                                     == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr))
                                                     ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mcycle
                                                     : 0ULL)))
                                                  : 0ULL))));
    if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cmt_valid) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__interrupt_ready1 = 1U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_fetched) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__interrupt_ready1 = 0U;
    }
    vlTOPp->SimTop__DOT__mem_write = __Vdly__SimTop__DOT__mem_write;
    vlTOPp->SimTop__DOT__axi_data_read = __Vdly__SimTop__DOT__axi_data_read;
    vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__len 
        = __Vdly__SimTop__DOT__ysyx_210448_u_axi_rw__DOT__len;
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__mtime 
        = __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__mtime;
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mstatus_mpie 
        = __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mstatus_mpie;
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mstatus_fs 
        = __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mstatus_fs;
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus 
        = __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus;
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3 
        = __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__s3;
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mip 
        = __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mip;
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mcycle 
        = __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mcycle;
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc 
        = __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc;
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus 
        = __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus;
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_open = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_open 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_open;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_skip = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_skip 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_skip;
    }
    vlTOPp->io_memAXI_0_aw_valid = (1U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__w_state));
    vlTOPp->io_memAXI_0_w_valid = (2U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__w_state));
    vlTOPp->io_memAXI_0_b_ready = (3U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__w_state));
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_csr_skip = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_csr_skip 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_csr_skip;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__w_data = 0ULL;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__aw_hs) {
        vlTOPp->SimTop__DOT__w_data = vlTOPp->SimTop__DOT__axi_write_data;
    }
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_read 
        = ((~ (IData)(vlTOPp->reset)) & ((~ (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)) 
                                         & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_mem_read)));
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_csr_read = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_csr_read 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_csr_read;
    }
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_s_imm 
        = ((IData)(vlTOPp->reset) ? 0U : ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)
                                           ? 0U : (
                                                   (0x23U 
                                                    == 
                                                    (0x7fU 
                                                     & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))
                                                    ? 
                                                   (0x7fU 
                                                    & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst 
                                                       >> 0x19U))
                                                    : 0U)));
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_mem_stage__DOT__s_s 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_s_imm) 
            << 5U) | (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_s_imm_s));
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_s_imm_s = 0U;
        vlTOPp->SimTop__DOT__exe_s1 = 0U;
    } else {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_s_imm_s 
            = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)
                ? 0U : ((0x23U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))
                         ? (0x1fU & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst 
                                     >> 7U)) : 0U));
        vlTOPp->SimTop__DOT__exe_s1 = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)
                                        ? 0U : ((((
                                                   (((((3U 
                                                        == 
                                                        (0x7fU 
                                                         & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst)) 
                                                       | (0x13U 
                                                          == 
                                                          (0x7fU 
                                                           & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                                                      | (0x63U 
                                                         == 
                                                         (0x7fU 
                                                          & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                                                     | (0x23U 
                                                        == 
                                                        (0x7fU 
                                                         & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                                                    | (0x33U 
                                                       == 
                                                       (0x7fU 
                                                        & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                                                   | (0x3bU 
                                                      == 
                                                      (0x7fU 
                                                       & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                                                  | (0x1bU 
                                                     == 
                                                     (0x7fU 
                                                      & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                                                 | (0x73U 
                                                    == 
                                                    (0x7fU 
                                                     & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst)))
                                                 ? 
                                                (7U 
                                                 & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst 
                                                    >> 0xcU))
                                                 : 0U));
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_w_ena = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_w_ena 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_w_ena;
    }
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2 
        = ((IData)(vlTOPp->reset) ? 0ULL : ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)
                                             ? 0ULL
                                             : ((IData)(vlTOPp->reset)
                                                 ? 0ULL
                                                 : 
                                                ((1U 
                                                  & (((0x23U 
                                                       == 
                                                       (0x7fU 
                                                        & vlTOPp->SimTop__DOT__if_inst))
                                                       ? 1U
                                                       : 0U)
                                                      ? 
                                                     (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_rd) 
                                                       == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs2))
                                                       ? 
                                                      ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_w_ena)
                                                        ? 0U
                                                        : (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_ena2))
                                                       : (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_ena2))
                                                      : 
                                                     (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_rd) 
                                                       == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs2))
                                                       ? 
                                                      ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_w_ena)
                                                        ? (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_ena2)
                                                        : 0U)
                                                       : (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_ena2))))
                                                  ? 
                                                 vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
                                                 [vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs2]
                                                  : 
                                                 ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ld)
                                                   ? 
                                                  vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
                                                  [vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs2]
                                                   : 0ULL)))));
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2 = 0ULL;
    } else if (((~ (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ld)) 
                & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_fetched))) {
        if ((((((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs2) 
                == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_rd)) 
               & (0U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs2))) 
              & (0U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_rd))) 
             & (3U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_opcode)))) {
            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2 
                = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_data;
        } else if ((((((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs2) 
                       == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_rd)) 
                      & (0U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs2))) 
                     & (0U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_rd))) 
                    & (3U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode)))) {
            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2 
                = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data;
        }
    }
    if ((1U & (~ (IData)(vlTOPp->reset)))) {
        if (((2U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__r_state)) 
             & (IData)(vlTOPp->io_memAXI_0_r_valid))) {
            vlTOPp->SimTop__DOT__axi_r_id_o = vlTOPp->io_memAXI_0_r_bits_id;
        }
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_I_imm = 0U;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 = 0ULL;
    } else {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_I_imm 
            = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)
                ? 0U : ((3U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))
                         ? (0xfffU & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst 
                                      >> 0x14U)) : 0U));
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
            = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)
                ? 0ULL : ((IData)(vlTOPp->reset) ? 0ULL
                           : ((1U & (((0x23U == (0x7fU 
                                                 & vlTOPp->SimTop__DOT__if_inst))
                                       ? 1U : 0U) ? 
                                     (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_rd) 
                                       == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs1))
                                       ? ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_w_ena)
                                           ? 0U : (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_ena1))
                                       : (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_ena1))
                                      : (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_rd) 
                                          == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs1))
                                          ? ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_w_ena)
                                              ? (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_ena1)
                                              : 0U)
                                          : (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_ena1))))
                               ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
                              [vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs1]
                               : ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ld)
                                   ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
                                  [vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs1]
                                   : 0ULL))));
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 = 0ULL;
    } else if (((~ (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ld)) 
                & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_fetched))) {
        if ((((((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs1) 
                == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_rd)) 
               & (0U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs1))) 
              & (0U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_rd))) 
             & (3U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_opcode)))) {
            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_data;
        } else if ((((((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs1) 
                       == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_rd)) 
                      & (0U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs1))) 
                     & (0U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_rd))) 
                    & (3U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode)))) {
            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data;
        }
    }
    if (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_fetched) 
         & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc_write))) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mepc_exe 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc_add;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_fetched) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__mepc_exe 
            = (4ULL + vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_pc);
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_pc = 0ULL;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_wb_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_pc 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_pc;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_read = 1U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_wb_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_read 
            = vlTOPp->SimTop__DOT__mem_read;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mhartid = 0ULL;
    } else if (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_fetched) 
                & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_write))) {
        if ((1U & (~ ((((((((0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr)) 
                            | (0x305U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                           | (0x300U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                          | (0x341U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                         | (0x344U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                        | (0x304U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                       | (0x342U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                      | (0x340U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr)))))) {
            if ((0x302U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                if ((0xf14U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mhartid 
                        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data;
                }
            }
        }
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mscratch = 0ULL;
    } else if (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_fetched) 
                & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_write))) {
        if (((((((((0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr)) 
                   | (0x305U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                  | (0x300U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                 | (0x341U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                | (0x344U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
               | (0x304U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
              | (0x342U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
             | (0x340U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr)))) {
            if ((0U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                if ((0x305U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                    if ((0x300U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                        if ((0x341U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                            if ((0x344U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                                if ((0x304U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                                    if ((0x342U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                                        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mscratch 
                                            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data;
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mtvec = 0ULL;
    } else if (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_fetched) 
                & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_write))) {
        if (((((((((0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr)) 
                   | (0x305U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                  | (0x300U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                 | (0x341U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                | (0x344U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
               | (0x304U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
              | (0x342U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
             | (0x340U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr)))) {
            if ((0U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                if ((0x305U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mtvec 
                        = (0xfffffffffffffffcULL & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data);
                }
            }
        }
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mie = 0ULL;
    } else if (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_fetched) 
                & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_write))) {
        if (((((((((0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr)) 
                   | (0x305U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                  | (0x300U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                 | (0x341U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                | (0x344U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
               | (0x304U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
              | (0x342U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
             | (0x340U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr)))) {
            if ((0U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                if ((0x305U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                    if ((0x300U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                        if ((0x341U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                            if ((0x344U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                                if ((0x304U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mie 
                                        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data;
                                }
                            }
                        }
                    }
                }
            }
        }
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mcause = 0ULL;
    } else {
        if (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_fetched) 
             & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_write))) {
            if (((((((((0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr)) 
                       | (0x305U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                      | (0x300U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                     | (0x341U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                    | (0x344U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                   | (0x304U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                  | (0x342U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                 | (0x340U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr)))) {
                if ((0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mcause 
                        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mcause_data;
                } else if ((0x305U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                    if ((0x300U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                        if ((0x341U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                            if ((0x344U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                                if ((0x304U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                                    if ((0x342U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                                        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mcause 
                                            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data;
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
        if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__clock_interrupt) {
            if ((0U != vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_inst)) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mcause 
                    = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mcause_data;
            }
        }
    }
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__interrupt 
        = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__interrupt_ready1)
            ? (1U & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__interrupt_ready2))
            : 0U);
    vlTOPp->SimTop__DOT__axi_write_addr = (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_op1 
                                           + ((0xfffffffffffff000ULL 
                                               & ((- (QData)((IData)(
                                                                     (1U 
                                                                      & ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_mem_stage__DOT__s_s) 
                                                                         >> 0xbU))))) 
                                                  << 0xcU)) 
                                              | (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_mem_stage__DOT__s_s))));
    vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__r_state 
        = __Vdly__SimTop__DOT__ysyx_210448_u_axi_rw__DOT__r_state;
    if (__Vdlyvset__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs__v0) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[0U] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[1U] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[2U] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[3U] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[4U] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[5U] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[6U] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[7U] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[8U] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[9U] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[0xaU] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[0xbU] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[0xcU] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[0xdU] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[0xeU] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[0xfU] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[0x10U] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[0x11U] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[0x12U] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[0x13U] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[0x14U] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[0x15U] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[0x16U] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[0x17U] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[0x18U] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[0x19U] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[0x1aU] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[0x1bU] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[0x1cU] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[0x1dU] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[0x1eU] = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[0x1fU] = 0ULL;
    }
    if (__Vdlyvset__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs__v32) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs[__Vdlyvdim0__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs__v32] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs__v32;
    }
    vlTOPp->SimTop__DOT__mem_read = __Vdly__SimTop__DOT__mem_read;
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_csr_skip 
        = ((~ (IData)(vlTOPp->reset)) & ((~ (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)) 
                                         & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr_skip)));
    vlTOPp->io_memAXI_0_w_bits_data[0U] = vlTOPp->SimTop__DOT__w_data;
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__mem_read_open 
        = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_read)
            ? ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_mem_read)
                ? 0U : 1U) : 0U);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_mem_read 
        = ((~ (IData)(vlTOPp->reset)) & ((~ (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)) 
                                         & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_mem_read)));
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_csr_read 
        = (1U & ((~ (IData)(vlTOPp->reset)) & ((~ (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)) 
                                               & ((0x73U 
                                                   == 
                                                   (0x7fU 
                                                    & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))
                                                   ? 1U
                                                   : 0U))));
    vlTOPp->io_memAXI_0_aw_bits_addr = (0xfffffffffffffff8ULL 
                                        & vlTOPp->SimTop__DOT__axi_write_addr);
    vlTOPp->io_memAXI_0_r_ready = (2U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__r_state));
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
        = ((1U == (IData)(vlTOPp->SimTop__DOT__axi_r_id_o))
            ? vlTOPp->SimTop__DOT__mem_read_data : 0ULL);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[0U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
        [0U];
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_rd = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_wb_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_rd 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_rd;
    }
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_w_ena 
        = ((~ (IData)(vlTOPp->reset)) & ((~ (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)) 
                                         & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_w_ena)));
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_data = 0ULL;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_data 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_opcode = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_opcode 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_pc = 0ULL;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_pc 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc;
    }
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data 
        = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_read)
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_read_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_data);
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data = 0ULL;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_wb_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_csr_data;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_wb_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_csr;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_write = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_wb_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_write 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_csr_write;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_inst = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_wb_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_inst 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_inst;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_fetched = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_wb_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_fetched 
            = vlTOPp->SimTop__DOT__mem_fetched;
    }
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_wb_en 
        = (1U & ((~ (IData)(vlTOPp->SimTop__DOT__mem_read)) 
                 | (1U == (IData)(vlTOPp->SimTop__DOT__axi_r_id_o))));
    if ((1U & (~ (IData)(vlTOPp->reset)))) {
        if (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__rw_ready) 
             & (~ (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_stop)))) {
            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_mem_read 
                = ((3U == (0x7fU & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_if_stage__DOT__if_inst_data)))
                    ? 1U : 0U);
        } else if (vlTOPp->SimTop__DOT__axi_r_hs_o) {
            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_mem_read = 0U;
        }
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_rd = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_rd 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_rd;
    }
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_w_ena 
        = ((~ (IData)(vlTOPp->reset)) & ((~ (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)) 
                                         & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_w_ena)));
    vlTOPp->SimTop__DOT__axi_write_data = ((0x23U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_opcode))
                                            ? ((0U 
                                                == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_s1))
                                                ? (
                                                   ((QData)((IData)(
                                                                    (0xffU 
                                                                     & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_op2)))) 
                                                    << 0x38U) 
                                                   | (((QData)((IData)(
                                                                       (0xffU 
                                                                        & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_op2)))) 
                                                       << 0x30U) 
                                                      | (((QData)((IData)(
                                                                          (0xffU 
                                                                           & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_op2)))) 
                                                          << 0x28U) 
                                                         | (((QData)((IData)(
                                                                             (0xffU 
                                                                              & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_op2)))) 
                                                             << 0x20U) 
                                                            | (((QData)((IData)(
                                                                                (0xffU 
                                                                                & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_op2)))) 
                                                                << 0x18U) 
                                                               | (((QData)((IData)(
                                                                                (0xffU 
                                                                                & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_op2)))) 
                                                                   << 0x10U) 
                                                                  | (((QData)((IData)(
                                                                                (0xffU 
                                                                                & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_op2)))) 
                                                                      << 8U) 
                                                                     | (QData)((IData)(
                                                                                (0xffU 
                                                                                & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_op2)))))))))))
                                                : (
                                                   (1U 
                                                    == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_s1))
                                                    ? 
                                                   (((QData)((IData)(
                                                                     (0xffffU 
                                                                      & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_op2)))) 
                                                     << 0x30U) 
                                                    | (((QData)((IData)(
                                                                        (0xffffU 
                                                                         & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_op2)))) 
                                                        << 0x20U) 
                                                       | (((QData)((IData)(
                                                                           (0xffffU 
                                                                            & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_op2)))) 
                                                           << 0x10U) 
                                                          | (QData)((IData)(
                                                                            (0xffffU 
                                                                             & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_op2)))))))
                                                    : 
                                                   ((2U 
                                                     == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_s1))
                                                     ? 
                                                    (((QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_op2)) 
                                                      << 0x20U) 
                                                     | (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_op2)))
                                                     : 
                                                    ((3U 
                                                      == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_s1))
                                                      ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_op2
                                                      : 0ULL))))
                                            : 0ULL);
    if ((3U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_opcode))) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data = 0ULL;
        if ((0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_s1))) {
            if ((0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = ((0xffffffffffffff00ULL & ((- (QData)((IData)(
                                                                    (1U 
                                                                     & (IData)(
                                                                               (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                                                >> 7U)))))) 
                                                 << 8U)) 
                       | (QData)((IData)((0xffU & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata)))));
            } else if ((1U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = ((0xffffffffffffff00ULL & ((- (QData)((IData)(
                                                                    (1U 
                                                                     & (IData)(
                                                                               (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                                                >> 0xfU)))))) 
                                                 << 8U)) 
                       | (QData)((IData)((0xffU & (IData)(
                                                          (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                           >> 8U))))));
            } else if ((2U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = ((0xffffffffffffff00ULL & ((- (QData)((IData)(
                                                                    (1U 
                                                                     & (IData)(
                                                                               (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                                                >> 0x17U)))))) 
                                                 << 8U)) 
                       | (QData)((IData)((0xffU & (IData)(
                                                          (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                           >> 0x10U))))));
            } else if ((3U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = ((0xffffffffffffff00ULL & ((- (QData)((IData)(
                                                                    (1U 
                                                                     & (IData)(
                                                                               (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                                                >> 0x1fU)))))) 
                                                 << 8U)) 
                       | (QData)((IData)((0xffU & (IData)(
                                                          (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                           >> 0x18U))))));
            } else if ((4U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = ((0xffffffffffffff00ULL & ((- (QData)((IData)(
                                                                    (1U 
                                                                     & (IData)(
                                                                               (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                                                >> 0x27U)))))) 
                                                 << 8U)) 
                       | (QData)((IData)((0xffU & (IData)(
                                                          (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                           >> 0x20U))))));
            } else if ((5U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = ((0xffffffffffffff00ULL & ((- (QData)((IData)(
                                                                    (1U 
                                                                     & (IData)(
                                                                               (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                                                >> 0x2fU)))))) 
                                                 << 8U)) 
                       | (QData)((IData)((0xffU & (IData)(
                                                          (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                           >> 0x28U))))));
            } else if ((6U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = ((0xffffffffffffff00ULL & ((- (QData)((IData)(
                                                                    (1U 
                                                                     & (IData)(
                                                                               (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                                                >> 0x37U)))))) 
                                                 << 8U)) 
                       | (QData)((IData)((0xffU & (IData)(
                                                          (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                           >> 0x30U))))));
            } else if ((7U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = ((0xffffffffffffff00ULL & ((- (QData)((IData)(
                                                                    (1U 
                                                                     & (IData)(
                                                                               (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                                                >> 0x3fU)))))) 
                                                 << 8U)) 
                       | (QData)((IData)((0xffU & (IData)(
                                                          (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                           >> 0x38U))))));
            }
        } else if ((1U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_s1))) {
            if ((0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = ((0xffffffffffff0000ULL & ((- (QData)((IData)(
                                                                    (1U 
                                                                     & (IData)(
                                                                               (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                                                >> 0xfU)))))) 
                                                 << 0x10U)) 
                       | (QData)((IData)((0xffffU & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata)))));
            } else if ((2U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = ((0xffffffffffff0000ULL & ((- (QData)((IData)(
                                                                    (1U 
                                                                     & (IData)(
                                                                               (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                                                >> 0x1fU)))))) 
                                                 << 0x10U)) 
                       | (QData)((IData)((0xffffU & (IData)(
                                                            (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                             >> 0x10U))))));
            } else if ((4U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = ((0xffffffffffff0000ULL & ((- (QData)((IData)(
                                                                    (1U 
                                                                     & (IData)(
                                                                               (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                                                >> 0x2fU)))))) 
                                                 << 0x10U)) 
                       | (QData)((IData)((0xffffU & (IData)(
                                                            (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                             >> 0x20U))))));
            } else if ((6U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = ((0xffffffffffff0000ULL & ((- (QData)((IData)(
                                                                    (1U 
                                                                     & (IData)(
                                                                               (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                                                >> 0x3fU)))))) 
                                                 << 0x10U)) 
                       | (QData)((IData)((0xffffU & (IData)(
                                                            (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                             >> 0x30U))))));
            }
        } else if ((2U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_s1))) {
            if ((0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = (((QData)((IData)((- (IData)(
                                                   (1U 
                                                    & (IData)(
                                                              (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                               >> 0x1fU))))))) 
                        << 0x20U) | (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata)));
            } else if ((4U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = (((QData)((IData)((- (IData)(
                                                   (1U 
                                                    & (IData)(
                                                              (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                               >> 0x3fU))))))) 
                        << 0x20U) | (QData)((IData)(
                                                    (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                     >> 0x20U))));
            }
        } else if ((6U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_s1))) {
            if ((0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata));
            } else if ((4U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = (QData)((IData)((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                       >> 0x20U)));
            }
        } else if ((4U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_s1))) {
            if ((0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = (QData)((IData)((0xffU & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata))));
            } else if ((1U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = (QData)((IData)((0xffU & (IData)(
                                                       (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                        >> 8U)))));
            } else if ((2U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = (QData)((IData)((0xffU & (IData)(
                                                       (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                        >> 0x10U)))));
            } else if ((3U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = (QData)((IData)((0xffU & (IData)(
                                                       (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                        >> 0x18U)))));
            } else if ((4U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = (QData)((IData)((0xffU & (IData)(
                                                       (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                        >> 0x20U)))));
            } else if ((5U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = (QData)((IData)((0xffU & (IData)(
                                                       (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                        >> 0x28U)))));
            } else if ((6U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = (QData)((IData)((0xffU & (IData)(
                                                       (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                        >> 0x30U)))));
            } else if ((7U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = (QData)((IData)((0xffU & (IData)(
                                                       (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                        >> 0x38U)))));
            }
        } else if ((5U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_s1))) {
            if ((0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = (QData)((IData)((0xffffU & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata))));
            } else if ((2U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = (QData)((IData)((0xffffU & (IData)(
                                                         (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                          >> 0x10U)))));
            } else if ((4U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = (QData)((IData)((0xffffU & (IData)(
                                                         (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                          >> 0x20U)))));
            } else if (((6U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3)) 
                        | (0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__s3)))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                    = (QData)((IData)((0xffffU & (IData)(
                                                         (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata 
                                                          >> 0x30U)))));
            }
        } else {
            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data 
                = ((3U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_s1))
                    ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rdata
                    : 0ULL);
        }
    } else {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_read_data = 0ULL;
    }
    vlTOPp->SimTop__DOT__axi_write_mask = ((0x23U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_opcode))
                                            ? ((0U 
                                                == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_s1))
                                                ? (
                                                   (0U 
                                                    == 
                                                    (7U 
                                                     & (IData)(vlTOPp->SimTop__DOT__axi_write_addr)))
                                                    ? 1U
                                                    : 
                                                   ((1U 
                                                     == 
                                                     (7U 
                                                      & (IData)(vlTOPp->SimTop__DOT__axi_write_addr)))
                                                     ? 2U
                                                     : 
                                                    ((2U 
                                                      == 
                                                      (7U 
                                                       & (IData)(vlTOPp->SimTop__DOT__axi_write_addr)))
                                                      ? 4U
                                                      : 
                                                     ((3U 
                                                       == 
                                                       (7U 
                                                        & (IData)(vlTOPp->SimTop__DOT__axi_write_addr)))
                                                       ? 8U
                                                       : 
                                                      ((4U 
                                                        == 
                                                        (7U 
                                                         & (IData)(vlTOPp->SimTop__DOT__axi_write_addr)))
                                                        ? 0x10U
                                                        : 
                                                       ((5U 
                                                         == 
                                                         (7U 
                                                          & (IData)(vlTOPp->SimTop__DOT__axi_write_addr)))
                                                         ? 0x20U
                                                         : 
                                                        ((6U 
                                                          == 
                                                          (7U 
                                                           & (IData)(vlTOPp->SimTop__DOT__axi_write_addr)))
                                                          ? 0x40U
                                                          : 
                                                         ((7U 
                                                           == 
                                                           (7U 
                                                            & (IData)(vlTOPp->SimTop__DOT__axi_write_addr)))
                                                           ? 0x80U
                                                           : 0U))))))))
                                                : (
                                                   (1U 
                                                    == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_s1))
                                                    ? 
                                                   ((0U 
                                                     == 
                                                     (7U 
                                                      & (IData)(vlTOPp->SimTop__DOT__axi_write_addr)))
                                                     ? 3U
                                                     : 
                                                    ((2U 
                                                      == 
                                                      (7U 
                                                       & (IData)(vlTOPp->SimTop__DOT__axi_write_addr)))
                                                      ? 0xcU
                                                      : 
                                                     ((4U 
                                                       == 
                                                       (7U 
                                                        & (IData)(vlTOPp->SimTop__DOT__axi_write_addr)))
                                                       ? 0x30U
                                                       : 
                                                      ((6U 
                                                        == 
                                                        (7U 
                                                         & (IData)(vlTOPp->SimTop__DOT__axi_write_addr)))
                                                        ? 0xc0U
                                                        : 0U))))
                                                    : 
                                                   ((2U 
                                                     == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_s1))
                                                     ? 
                                                    ((0U 
                                                      == 
                                                      (7U 
                                                       & (IData)(vlTOPp->SimTop__DOT__axi_write_addr)))
                                                      ? 0xfU
                                                      : 
                                                     ((4U 
                                                       == 
                                                       (7U 
                                                        & (IData)(vlTOPp->SimTop__DOT__axi_write_addr)))
                                                       ? 0xf0U
                                                       : 0U))
                                                     : 
                                                    ((3U 
                                                      == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_s1))
                                                      ? 0xffU
                                                      : 0U))))
                                            : 0U);
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode = 0U;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc = 0ULL;
    } else {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode 
            = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)
                ? 0U : (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst));
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc 
            = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)
                ? 0ULL : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_pc);
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_csr_data = 0ULL;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_csr_data 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_csr_data;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_csr = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_csr 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_csr;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_csr_write = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_csr_write 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_csr_write;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_inst = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_inst 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_inst;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__mem_fetched = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_en) {
        vlTOPp->SimTop__DOT__mem_fetched = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_fetched;
    }
    vlTOPp->io_memAXI_0_w_bits_strb = vlTOPp->SimTop__DOT__axi_write_mask;
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_rd 
        = ((IData)(vlTOPp->reset) ? 0U : ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)
                                           ? 0U : (
                                                   ((((((((((0x37U 
                                                             == 
                                                             (0x7fU 
                                                              & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst)) 
                                                            | (0x17U 
                                                               == 
                                                               (0x7fU 
                                                                & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                                                           | (0x6fU 
                                                              == 
                                                              (0x7fU 
                                                               & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                                                          | (3U 
                                                             == 
                                                             (0x7fU 
                                                              & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                                                         | (0x13U 
                                                            == 
                                                            (0x7fU 
                                                             & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                                                        | (0x33U 
                                                           == 
                                                           (0x7fU 
                                                            & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                                                       | (0x67U 
                                                          == 
                                                          (0x7fU 
                                                           & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                                                      | (0x1bU 
                                                         == 
                                                         (0x7fU 
                                                          & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                                                     | (0x3bU 
                                                        == 
                                                        (0x7fU 
                                                         & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                                                    | (0x73U 
                                                       == 
                                                       (0x7fU 
                                                        & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst)))
                                                    ? 
                                                   (0x1fU 
                                                    & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst 
                                                       >> 7U))
                                                    : 0U)));
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ld 
        = (((3U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_opcode)) 
            | (3U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode)))
            ? 1U : 0U);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_skip 
        = (0x7bU == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode));
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_pc = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_csr = 0U;
    } else {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_pc 
            = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)
                ? 0ULL : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_pc);
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_csr 
            = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)
                ? 0U : (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr));
    }
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_csr_write 
        = (1U & ((~ (IData)(vlTOPp->reset)) & ((~ (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)) 
                                               & ((0x73U 
                                                   == 
                                                   (0x7fU 
                                                    & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))
                                                   ? 1U
                                                   : 0U))));
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_inst 
        = ((IData)(vlTOPp->reset) ? 0U : ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)
                                           ? 0U : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst));
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_fetched 
        = ((~ (IData)(vlTOPp->reset)) & ((~ (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)) 
                                         & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_fetched)));
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst 
        = ((IData)(vlTOPp->reset) ? 0U : ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)
                                           ? 0U : vlTOPp->SimTop__DOT__if_inst));
    vlTOPp->io_uart_out_valid = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_fetched) 
                                  & (0x7bU == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode)))
                                  ? 1U : 0U);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_fetched 
        = ((~ (IData)(vlTOPp->reset)) & ((~ (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble)) 
                                         & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_fetched)));
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs1 
        = (0x1fU & ((((((((((0x67U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst)) 
                            | (3U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                           | (0x13U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                          | (0x63U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                         | (0x23U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                        | (0x33U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                       | (0x1bU == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                      | (0x3bU == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                     | (0x73U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst)))
                     ? (0x1fU & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst 
                                 >> 0xfU)) : ((0x7bU 
                                               == (0x7fU 
                                                   & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))
                                               ? 0xaU
                                               : 0U)));
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs2 
        = (((((0x63U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst)) 
              | (0x23U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
             | (0x33U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
            | (0x3bU == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst)))
            ? (0x1fU & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst 
                        >> 0x14U)) : 0U);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_ena1 
        = (((((((((((0x67U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst)) 
                    | (3U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                   | (0x13U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                  | (0x63U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                 | (0x23U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
                | (0x33U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
               | (0x1bU == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
              | (0x3bU == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
             | (0x7bU == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
            | (0x73U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst)))
            ? 1U : 0U);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_ena2 
        = (((((0x63U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst)) 
              | (0x23U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
             | (0x33U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))) 
            | (0x3bU == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst)))
            ? 1U : 0U);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_b_imm 
        = ((0x63U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))
            ? (0x7fU & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst 
                        >> 0x19U)) : 0U);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr 
        = ((0x73U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))
            ? (0xfffU & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst 
                         >> 0x14U)) : 0U);
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_pc = 0x80000000ULL;
        __Vdly__SimTop__DOT__if_addr = 0x80000000ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_fetched = 0U;
    } else if (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__rw_ready) 
                & (~ (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_stop)))) {
        if (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__pc_write) 
             & (0U != vlTOPp->SimTop__DOT__if_inst))) {
            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_pc 
                = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__pc_add;
            __Vdly__SimTop__DOT__if_addr = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__pc_add;
            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_fetched = 1U;
            vlTOPp->SimTop__DOT__if_inst = (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_if_stage__DOT__if_inst_data);
        } else {
            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_pc 
                = vlTOPp->SimTop__DOT__if_addr;
            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_fetched = 1U;
            vlTOPp->SimTop__DOT__if_inst = (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_if_stage__DOT__if_inst_data);
            __Vdly__SimTop__DOT__if_addr = (4ULL + vlTOPp->SimTop__DOT__if_addr);
        }
    } else if ((1U & (~ (IData)(vlTOPp->SimTop__DOT__axi_r_hs_o)))) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_fetched = 0U;
    }
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_stop 
        = ((IData)(vlTOPp->SimTop__DOT__mem_read) & 
           (~ ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_read) 
               & (2U == (IData)(vlTOPp->SimTop__DOT__axi_r_id_o)))));
    vlTOPp->SimTop__DOT__if_addr = __Vdly__SimTop__DOT__if_addr;
    vlTOPp->SimTop__DOT__axi_r_hs_o = vlTOPp->SimTop__DOT__r_hs;
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__rw_ready = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__rw_ready_en) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__rw_ready 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__r_done;
    }
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__if_w_ena 
        = ((((0x63U == (0x7fU & vlTOPp->SimTop__DOT__if_inst)) 
             | (3U == (0x7fU & vlTOPp->SimTop__DOT__if_inst))) 
            | (0x23U == (0x7fU & vlTOPp->SimTop__DOT__if_inst)))
            ? 0U : 1U);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_write_ready 
        = ((((0x23U == (0x7fU & vlTOPp->SimTop__DOT__if_inst))
              ? 1U : 0U) & (IData)(vlTOPp->SimTop__DOT__mem_fetched))
            ? ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_write_ready)
                ? 0U : 1U) : 0U);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena 
        = (((3U == (0x7fU & vlTOPp->SimTop__DOT__if_inst))
             ? 1U : 0U) ? (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_read)
            : (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_w_ena));
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd 
        = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena)
            ? (0x1fU & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_rd))
            : 0U);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[1U] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (1U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [1U]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[2U] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (2U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [2U]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[3U] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (3U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [3U]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[4U] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (4U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [4U]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[5U] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (5U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [5U]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[6U] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (6U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [6U]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[7U] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (7U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [7U]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[8U] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (8U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [8U]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[9U] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (9U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [9U]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[0xaU] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (0xaU == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [0xaU]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[0xbU] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (0xbU == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [0xbU]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[0xcU] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (0xcU == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [0xcU]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[0xdU] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (0xdU == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [0xdU]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[0xeU] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (0xeU == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [0xeU]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[0xfU] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (0xfU == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [0xfU]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[0x10U] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (0x10U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [0x10U]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[0x11U] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (0x11U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [0x11U]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[0x12U] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (0x12U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [0x12U]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[0x13U] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (0x13U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [0x13U]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[0x14U] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (0x14U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [0x14U]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[0x15U] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (0x15U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [0x15U]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[0x16U] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (0x16U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [0x16U]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[0x17U] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (0x17U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [0x17U]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[0x18U] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (0x18U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [0x18U]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[0x19U] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (0x19U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [0x19U]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[0x1aU] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (0x1aU == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [0x1aU]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[0x1bU] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (0x1bU == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [0x1bU]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[0x1cU] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (0x1cU == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [0x1cU]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[0x1dU] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (0x1dU == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [0x1dU]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[0x1eU] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (0x1eU == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [0x1eU]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o[0x1fU] 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_ena) 
            & (0x1fU == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__w_rd)))
            ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__w_data
            : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_Regfile__DOT__regs
           [0x1fU]);
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[0U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [0U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[1U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [1U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[2U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [2U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[3U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [3U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[4U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [4U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[5U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [5U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[6U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [6U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[7U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [7U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[8U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [8U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[9U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [9U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[0xaU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [0xaU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[0xbU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [0xbU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[0xcU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [0xcU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[0xdU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [0xdU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[0xeU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [0xeU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[0xfU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [0xfU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[0x10U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [0x10U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[0x11U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [0x11U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[0x12U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [0x12U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[0x13U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [0x13U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[0x14U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [0x14U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[0x15U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [0x15U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[0x16U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [0x16U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[0x17U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [0x17U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[0x18U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [0x18U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[0x19U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [0x19U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[0x1aU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [0x1aU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[0x1bU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [0x1bU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[0x1cU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [0x1cU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[0x1dU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [0x1dU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[0x1eU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [0x1eU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o[0x1fU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT____Vcellout__ysyx_210448_Regfile__regs_o
        [0x1fU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[0U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [0U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[1U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [1U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[2U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [2U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[3U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [3U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[4U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [4U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[5U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [5U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[6U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [6U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[7U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [7U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[8U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [8U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[9U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [9U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[0xaU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [0xaU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[0xbU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [0xbU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[0xcU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [0xcU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[0xdU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [0xdU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[0xeU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [0xeU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[0xfU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [0xfU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[0x10U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [0x10U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[0x11U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [0x11U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[0x12U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [0x12U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[0x13U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [0x13U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[0x14U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [0x14U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[0x15U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [0x15U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[0x16U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [0x16U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[0x17U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [0x17U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[0x18U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [0x18U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[0x19U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [0x19U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[0x1aU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [0x1aU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[0x1bU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [0x1bU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[0x1cU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [0x1cU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[0x1dU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [0x1dU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[0x1eU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [0x1eU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o[0x1fU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellout__ysyx_210448_wb_stage__regs_o
        [0x1fU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[0U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [0U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[1U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [1U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[2U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [2U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[3U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [3U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[4U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [4U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[5U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [5U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[6U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [6U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[7U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [7U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[8U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [8U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[9U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [9U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[0xaU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [0xaU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[0xbU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [0xbU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[0xcU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [0xcU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[0xdU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [0xdU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[0xeU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [0xeU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[0xfU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [0xfU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[0x10U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [0x10U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[0x11U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [0x11U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[0x12U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [0x12U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[0x13U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [0x13U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[0x14U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [0x14U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[0x15U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [0x15U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[0x16U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [0x16U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[0x17U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [0x17U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[0x18U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [0x18U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[0x19U] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [0x19U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[0x1aU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [0x1aU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[0x1bU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [0x1bU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[0x1cU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [0x1cU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[0x1dU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [0x1dU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[0x1eU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [0x1eU];
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT____Vcellinp__ysyx_210448_Pause__regs_o[0x1fU] 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
        [0x1fU];
}

VL_INLINE_OPT void VSimTop::_sequent__TOP__5(VSimTop__Syms* __restrict vlSymsp) {
    VL_DEBUG_IF(VL_DBG_MSGF("+    VSimTop::_sequent__TOP__5\n"); );
    VSimTop* const __restrict vlTOPp VL_ATTR_UNUSED = vlSymsp->TOPp;
    // Variables
    CData/*0:0*/ __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__trap;
    CData/*0:0*/ __Vdlyvset__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v0;
    CData/*0:0*/ __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_mpie;
    CData/*1:0*/ __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_fs;
    CData/*0:0*/ __Vdlyvset__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v1;
    CData/*0:0*/ __Vdlyvset__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v4;
    QData/*63:0*/ __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__cycleCnt;
    QData/*63:0*/ __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__instrCnt;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v0;
    QData/*63:0*/ __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc_diff;
    QData/*63:0*/ __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus_diff;
    QData/*63:0*/ __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_diff;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v1;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v2;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v3;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v4;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v5;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v6;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v7;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v8;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v9;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v10;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v11;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v12;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v13;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v14;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v15;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v16;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v17;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v18;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v19;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v20;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v21;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v22;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v23;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v24;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v25;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v26;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v27;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v28;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v29;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v30;
    QData/*63:0*/ __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v31;
    // Body
    __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_diff 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_diff;
    __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus_diff 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus_diff;
    __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_fs 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_fs;
    __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_mpie 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_mpie;
    __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc_diff 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc_diff;
    __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__instrCnt 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__instrCnt;
    __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__cycleCnt 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cycleCnt;
    __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__trap 
        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__trap;
    __Vdlyvset__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v0 = 0U;
    __Vdlyvset__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v1 = 0U;
    __Vdlyvset__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v4 = 0U;
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cmt_wen = 0U;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cmt_wdest = 0U;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cmt_wdata = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cmt_pc = 0ULL;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cmt_inst = 0U;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cmt_valid = 0U;
        __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__trap = 0U;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__trap_code = 0U;
        __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__cycleCnt = 0ULL;
        __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__instrCnt = 0ULL;
    } else if ((1U & (~ (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__trap)))) {
        __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__cycleCnt 
            = (1ULL + vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cycleCnt);
        __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__instrCnt 
            = (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__instrCnt 
               + (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__inst_valid)));
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cmt_wen 
            = ((IData)(vlTOPp->SimTop__DOT__clint_skip)
                ? 1U : (1U & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_w_ena)));
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cmt_wdest 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_rd;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cmt_wdata 
            = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_read)
                ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_read_data
                : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_data);
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cmt_pc 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_pc;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cmt_inst 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_inst;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cmt_valid 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__inst_valid;
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v0 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [0U];
        __Vdlyvset__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v0 = 1U;
        __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__trap 
            = (0x6bU == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_inst));
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__trap_code 
            = (0xffU & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
                               [0xaU]));
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__skip 
            = ((IData)(vlTOPp->SimTop__DOT__clint_skip)
                ? (IData)(vlTOPp->SimTop__DOT__clint_skip)
                : ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_read)
                    ? (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_skip)
                    : (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_skip)));
        if (((0x73U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_opcode)) 
             & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__csr))) {
            if (((((((((0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr)) 
                       | (0x305U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                      | (0x341U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                     | (0x300U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                    | (0x344U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                   | (0x304U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                  | (0x342U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) 
                 | (0x340U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr)))) {
                if ((0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                    if ((0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr))) {
                        __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc_diff 
                            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_pc;
                        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mcause_diff 
                            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mcause_data;
                        __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_mpie 
                            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_mie;
                        __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_fs 
                            = (3U & (IData)((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus 
                                             >> 0xdU)));
                        __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus_diff 
                            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_diff;
                        __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_diff 
                            = ((0xffffffffffffe000ULL 
                                & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus) 
                               | (QData)((IData)((0x1800U 
                                                  | ((0x700U 
                                                      & ((IData)(
                                                                 (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus 
                                                                  >> 8U)) 
                                                         << 8U)) 
                                                     | (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_mie) 
                                                         << 7U) 
                                                        | ((0x70U 
                                                            & ((IData)(
                                                                       (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus 
                                                                        >> 4U)) 
                                                               << 4U)) 
                                                           | (7U 
                                                              & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus)))))))));
                    }
                } else if ((0x305U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mtvec_diff 
                        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data;
                } else if ((0x341U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                    if ((0U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs1))) {
                        __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc_diff 
                            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data;
                    }
                } else if ((0x300U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                    if ((0U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs1))) {
                        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__sstatus_diff 
                            = (((QData)((IData)((1U 
                                                 & (IData)(
                                                           (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data 
                                                            >> 0xdU))))) 
                                << 0x3fU) | ((0x7fffffffffff8000ULL 
                                              & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data) 
                                             | (QData)((IData)(
                                                               (0x6000U 
                                                                & ((IData)(
                                                                           (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data 
                                                                            >> 0xdU)) 
                                                                   << 0xdU))))));
                        if ((((0U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_rs1)) 
                              & (0U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_rd))) 
                             | ((IData)((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_diff 
                                         >> 0xdU)) 
                                & (0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_rd))))) {
                            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_mie 
                                = (1U & (IData)((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_diff 
                                                 >> 3U)));
                            __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus_diff 
                                = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_diff;
                            __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_fs 
                                = (3U & (IData)((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_diff 
                                                 >> 0xdU)));
                            __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_mpie 
                                = (1U & (IData)((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_diff 
                                                 >> 7U)));
                        }
                        __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_diff 
                            = (((QData)((IData)((1U 
                                                 & (IData)(
                                                           (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data 
                                                            >> 0xdU))))) 
                                << 0x3fU) | (0x7fffffffffffffffULL 
                                             & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data));
                    }
                } else if ((0x344U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mip_diff 
                        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data;
                } else if ((0x304U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mie_diff 
                        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data;
                } else if ((0x342U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mcause_diff 
                        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data;
                } else {
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mscratch_diff 
                        = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data;
                }
            } else if ((0x302U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_diff 
                    = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__interrupt)
                        ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus_diff
                        : (((QData)((IData)((1U & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_fs)))) 
                            << 0x3fU) | ((0x7fffffffffff8000ULL 
                                          & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus_diff) 
                                         | (QData)((IData)(
                                                           (0x80U 
                                                            | (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_fs) 
                                                                << 0xdU) 
                                                               | ((0x700U 
                                                                   & ((IData)(
                                                                              (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus_diff 
                                                                               >> 8U)) 
                                                                      << 8U)) 
                                                                  | ((0x70U 
                                                                      & ((IData)(
                                                                                (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus_diff 
                                                                                >> 4U)) 
                                                                         << 4U)) 
                                                                     | (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_mpie) 
                                                                         << 3U) 
                                                                        | (7U 
                                                                           & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus_diff))))))))))));
            } else if ((0xf14U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mhartid_diff 
                    = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data;
            } else {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mcause_diff = 0ULL;
                __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc_diff = 0ULL;
                __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_diff = 0ULL;
            }
        }
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v1 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [1U];
        __Vdlyvset__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v1 = 1U;
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v2 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [2U];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v3 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [3U];
        if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__interrupt) {
            __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus_diff 
                = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_diff;
            __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc_diff 
                = ((0x302U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))
                    ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc_diff
                    : vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc_exe);
            __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_fs 
                = (3U & (IData)((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_diff 
                                 >> 0xdU)));
            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mcause_diff 
                = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mcause;
            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__intrNO 
                = (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mcause);
            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cause 
                = (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mcause);
            __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_mpie 
                = (1U & (IData)((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_diff 
                                 >> 3U)));
            __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_diff 
                = ((0x302U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))
                    ? vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus_diff
                    : ((0x300U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr))
                        ? ((0xffffffffffffe000ULL & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data) 
                           | (QData)((IData)((0x1800U 
                                              | ((0x700U 
                                                  & ((IData)(
                                                             (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data 
                                                              >> 8U)) 
                                                     << 8U)) 
                                                 | ((0x80U 
                                                     & ((IData)(
                                                                (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data 
                                                                 >> 3U)) 
                                                        << 7U)) 
                                                    | ((0x70U 
                                                        & ((IData)(
                                                                   (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data 
                                                                    >> 4U)) 
                                                           << 4U)) 
                                                       | (7U 
                                                          & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_csr_data)))))))))
                        : ((0xffffffffffffe000ULL & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_diff) 
                           | (QData)((IData)((0x1800U 
                                              | ((0x700U 
                                                  & ((IData)(
                                                             (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_diff 
                                                              >> 8U)) 
                                                     << 8U)) 
                                                 | ((0x80U 
                                                     & ((IData)(
                                                                (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_diff 
                                                                 >> 3U)) 
                                                        << 7U)) 
                                                    | ((0x70U 
                                                        & ((IData)(
                                                                   (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_diff 
                                                                    >> 4U)) 
                                                           << 4U)) 
                                                       | (7U 
                                                          & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_diff)))))))))));
        } else {
            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__intrNO = 0U;
            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cause = 0U;
        }
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v4 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [4U];
        __Vdlyvset__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v4 = 1U;
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v5 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [5U];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v6 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [6U];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v7 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [7U];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v8 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [8U];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v9 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [9U];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v10 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [0xaU];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v11 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [0xbU];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v12 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [0xcU];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v13 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [0xdU];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v14 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [0xeU];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v15 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [0xfU];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v16 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [0x10U];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v17 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [0x11U];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v18 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [0x12U];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v19 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [0x13U];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v20 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [0x14U];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v21 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [0x15U];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v22 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [0x16U];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v23 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [0x17U];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v24 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [0x18U];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v25 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [0x19U];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v26 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [0x1aU];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v27 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [0x1bU];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v28 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [0x1cU];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v29 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [0x1dU];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v30 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [0x1eU];
        __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v31 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_o
            [0x1fU];
    }
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__trap 
        = __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__trap;
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cycleCnt 
        = __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__cycleCnt;
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__instrCnt 
        = __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__instrCnt;
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_mpie 
        = __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_mpie;
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_fs 
        = __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_fs;
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus_diff 
        = __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__rmstatus_diff;
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_diff 
        = __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus_diff;
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc_diff 
        = __Vdly__SimTop__DOT__ysyx_210448_u_cpu__DOT__mepc_diff;
    if (__Vdlyvset__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v0) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[0U] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v0;
    }
    if (__Vdlyvset__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v1) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[1U] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v1;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[2U] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v2;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[3U] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v3;
    }
    if (__Vdlyvset__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v4) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[4U] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v4;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[5U] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v5;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[6U] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v6;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[7U] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v7;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[8U] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v8;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[9U] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v9;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[0xaU] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v10;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[0xbU] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v11;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[0xcU] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v12;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[0xdU] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v13;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[0xeU] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v14;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[0xfU] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v15;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[0x10U] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v16;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[0x11U] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v17;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[0x12U] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v18;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[0x13U] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v19;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[0x14U] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v20;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[0x15U] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v21;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[0x16U] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v22;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[0x17U] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v23;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[0x18U] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v24;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[0x19U] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v25;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[0x1aU] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v26;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[0x1bU] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v27;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[0x1cU] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v28;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[0x1dU] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v29;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[0x1eU] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v30;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff[0x1fU] 
            = __Vdlyvval__SimTop__DOT__ysyx_210448_u_cpu__DOT__regs_diff__v31;
    }
}

VL_INLINE_OPT void VSimTop::_combo__TOP__7(VSimTop__Syms* __restrict vlSymsp) {
    VL_DEBUG_IF(VL_DBG_MSGF("+    VSimTop::_combo__TOP__7\n"); );
    VSimTop* const __restrict vlTOPp VL_ATTR_UNUSED = vlSymsp->TOPp;
    // Variables
    VlWide<4>/*127:0*/ __Vtemp56;
    VlWide<4>/*127:0*/ __Vtemp57;
    // Body
    vlTOPp->SimTop__DOT__b_hs = ((3U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__w_state)) 
                                 & (IData)(vlTOPp->io_memAXI_0_b_valid));
    vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__w_hs 
        = ((IData)(vlTOPp->io_memAXI_0_w_ready) & (2U 
                                                   == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__w_state)));
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_skip = 0U;
    }
    vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__aw_hs 
        = ((IData)(vlTOPp->io_memAXI_0_aw_ready) & 
           (1U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__w_state)));
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__clock_interrupt 
        = ((~ (IData)(vlTOPp->reset)) & (((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__mtime 
                                           >= vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__mtimecmp) 
                                          & (IData)(
                                                    (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mie 
                                                     >> 7U))) 
                                         & (IData)(
                                                   (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus 
                                                    >> 3U))));
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_en = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_fetched) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_mem_en = 1U;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_csr_data = 0ULL;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_fetched) {
        if ((0x33U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
            if ((0x13U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                if ((0x63U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                    if ((0x37U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                        if ((0x17U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                            if ((0x6fU != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                                if ((0x67U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                                    if ((0x1bU != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                                        if ((0x3bU 
                                             != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                                            if ((0x7bU 
                                                 != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                                                if (
                                                    (0x73U 
                                                     == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                                                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__csr_zimm 
                                                        = (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_zimm));
                                                    if (
                                                        (4U 
                                                         & (IData)(vlTOPp->SimTop__DOT__exe_s1))) {
                                                        if (
                                                            (2U 
                                                             & (IData)(vlTOPp->SimTop__DOT__exe_s1))) {
                                                            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_csr_data 
                                                                = 
                                                                ((1U 
                                                                  & (IData)(vlTOPp->SimTop__DOT__exe_s1))
                                                                  ? 
                                                                 (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_t 
                                                                  & (~ vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__csr_zimm))
                                                                  : 
                                                                 (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_t 
                                                                  | vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__csr_zimm));
                                                        } else if (
                                                                   (1U 
                                                                    & (IData)(vlTOPp->SimTop__DOT__exe_s1))) {
                                                            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_csr_data 
                                                                = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__csr_zimm;
                                                        }
                                                    } else if (
                                                               (2U 
                                                                & (IData)(vlTOPp->SimTop__DOT__exe_s1))) {
                                                        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_csr_data 
                                                            = 
                                                            ((1U 
                                                              & (IData)(vlTOPp->SimTop__DOT__exe_s1))
                                                              ? 
                                                             (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_t 
                                                              & (~ vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1))
                                                              : 
                                                             (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_t 
                                                              | vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1));
                                                    } else if (
                                                               (1U 
                                                                & (IData)(vlTOPp->SimTop__DOT__exe_s1))) {
                                                        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_csr_data 
                                                            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data = 0ULL;
        vlTOPp->io_uart_out_ch = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_fetched) {
        vlTOPp->io_uart_out_ch = 0U;
        if ((0x33U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
            if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_s2) {
                if ((0U == (IData)(vlTOPp->SimTop__DOT__exe_s1))) {
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                        = (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                           - vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2);
                } else if ((5U == (IData)(vlTOPp->SimTop__DOT__exe_s1))) {
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__sra_imm 
                        = (0x3fU & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2));
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                        = VL_SHIFTRS_QQI(64,64,6, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1, (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__sra_imm));
                }
            } else if ((4U & (IData)(vlTOPp->SimTop__DOT__exe_s1))) {
                if ((2U & (IData)(vlTOPp->SimTop__DOT__exe_s1))) {
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                        = ((1U & (IData)(vlTOPp->SimTop__DOT__exe_s1))
                            ? (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                               & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2)
                            : (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                               | vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2));
                } else if ((1U & (IData)(vlTOPp->SimTop__DOT__exe_s1))) {
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__srl_imm 
                        = (0x3fU & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2));
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                        = (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                           >> (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__srl_imm));
                } else {
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                        = (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                           ^ vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2);
                }
            } else if ((2U & (IData)(vlTOPp->SimTop__DOT__exe_s1))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                    = ((1U & (IData)(vlTOPp->SimTop__DOT__exe_s1))
                        ? ((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2 
                            > vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1)
                            ? 1ULL : 0ULL) : (VL_GTS_IQQ(1,64,64, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1)
                                               ? 1ULL
                                               : 0ULL));
            } else if ((1U & (IData)(vlTOPp->SimTop__DOT__exe_s1))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__sll_imm_sll 
                    = (0x3fU & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2));
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                    = (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                       << (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__sll_imm_sll));
            } else {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                    = (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                       + vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2);
            }
        } else if ((0x13U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
            if ((4U & (IData)(vlTOPp->SimTop__DOT__exe_s1))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                    = ((2U & (IData)(vlTOPp->SimTop__DOT__exe_s1))
                        ? ((1U & (IData)(vlTOPp->SimTop__DOT__exe_s1))
                            ? (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                               & ((0xfffffffffffff000ULL 
                                   & ((- (QData)((IData)(
                                                         (1U 
                                                          & ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_i_imm) 
                                                             >> 0xbU))))) 
                                      << 0xcU)) | (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_i_imm))))
                            : (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                               | ((0xfffffffffffff000ULL 
                                   & ((- (QData)((IData)(
                                                         (1U 
                                                          & ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_i_imm) 
                                                             >> 0xbU))))) 
                                      << 0xcU)) | (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_i_imm)))))
                        : ((1U & (IData)(vlTOPp->SimTop__DOT__exe_s1))
                            ? ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_s2)
                                ? VL_SHIFTRS_QQI(64,64,6, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1, (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__shamt))
                                : (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                                   >> (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__shamt)))
                            : (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                               ^ ((0xfffffffffffff000ULL 
                                   & ((- (QData)((IData)(
                                                         (1U 
                                                          & ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_i_imm) 
                                                             >> 0xbU))))) 
                                      << 0xcU)) | (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_i_imm))))));
            } else if ((2U & (IData)(vlTOPp->SimTop__DOT__exe_s1))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                    = ((1U & (IData)(vlTOPp->SimTop__DOT__exe_s1))
                        ? ((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                            < ((0xfffffffffffff000ULL 
                                & ((- (QData)((IData)(
                                                      (1U 
                                                       & ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_i_imm) 
                                                          >> 0xbU))))) 
                                   << 0xcU)) | (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_i_imm))))
                            ? 1ULL : 0ULL) : (VL_LTS_IQQ(1,64,64, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1, 
                                                         ((0xfffffffffffff000ULL 
                                                           & ((- (QData)((IData)(
                                                                                (1U 
                                                                                & ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_i_imm) 
                                                                                >> 0xbU))))) 
                                                              << 0xcU)) 
                                                          | (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_i_imm))))
                                               ? 1ULL
                                               : 0ULL));
            } else if ((1U & (IData)(vlTOPp->SimTop__DOT__exe_s1))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                    = (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                       << (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__shamt));
            } else {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                    = (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                       + ((0xfffffffffffff000ULL & 
                           ((- (QData)((IData)((1U 
                                                & ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_i_imm) 
                                                   >> 0xbU))))) 
                            << 0xcU)) | (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_i_imm))));
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__printf 
                    = (0xffU & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data));
            }
        } else if ((0x63U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
            if ((0x37U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__exe_u_imm_u 
                    = ((0xfffffffffff00000ULL & ((- (QData)((IData)(
                                                                    (1U 
                                                                     & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_u_imm 
                                                                        >> 0x13U))))) 
                                                 << 0x14U)) 
                       | (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_u_imm)));
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__exe_u_imm_u 
                    = (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__exe_u_imm_u 
                       << 0xcU);
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                    = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__exe_u_imm_u;
            } else if ((0x17U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__exe_u_imm_u 
                    = ((0xfffffffffff00000ULL & ((- (QData)((IData)(
                                                                    (1U 
                                                                     & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_u_imm 
                                                                        >> 0x13U))))) 
                                                 << 0x14U)) 
                       | (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_u_imm)));
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__exe_u_imm_u 
                    = (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__exe_u_imm_u 
                       << 0xcU);
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                    = (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__exe_u_imm_u 
                       + vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc);
            } else if ((0x6fU == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                    = (4ULL + vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc);
            } else if ((0x67U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                    = (4ULL + vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc);
            } else if ((0x1bU == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                if ((0U == (IData)(vlTOPp->SimTop__DOT__exe_s1))) {
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                        = (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                           + ((0xfffffffffffff000ULL 
                               & ((- (QData)((IData)(
                                                     (1U 
                                                      & ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_w_imm) 
                                                         >> 0xbU))))) 
                                  << 0xcU)) | (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_w_imm))));
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                        = (((QData)((IData)((- (IData)(
                                                       (1U 
                                                        & (IData)(
                                                                  (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                                                                   >> 0x1fU))))))) 
                            << 0x20U) | (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data)));
                } else if ((5U == (IData)(vlTOPp->SimTop__DOT__exe_s1))) {
                    if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_s2) {
                        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__sraw 
                            = (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1);
                        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__sraw 
                            = ((0x1fU >= (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_w_shamt))
                                ? VL_SHIFTRS_III(32,32,6, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__sraw, (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_w_shamt))
                                : (- (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__sraw 
                                      >> 0x1fU)));
                        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                            = (((QData)((IData)((- (IData)(
                                                           (1U 
                                                            & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__sraw 
                                                               >> 0x1fU)))))) 
                                << 0x20U) | (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__sraw)));
                    } else {
                        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__srlw 
                            = (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1);
                        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__srlw 
                            = ((0x1fU >= (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_w_shamt))
                                ? (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__srlw 
                                   >> (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_w_shamt))
                                : 0U);
                        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                            = (((QData)((IData)((- (IData)(
                                                           (1U 
                                                            & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__srlw 
                                                               >> 0x1fU)))))) 
                                << 0x20U) | (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__srlw)));
                    }
                } else if ((1U == (IData)(vlTOPp->SimTop__DOT__exe_s1))) {
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                        = (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                           << (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_w_shamt));
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                        = (((QData)((IData)((- (IData)(
                                                       (1U 
                                                        & (IData)(
                                                                  (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                                                                   >> 0x1fU))))))) 
                            << 0x20U) | (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data)));
                }
            } else if ((0x3bU == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_s2) {
                    if ((0U == (IData)(vlTOPp->SimTop__DOT__exe_s1))) {
                        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                            = (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                               - vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2);
                        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                            = (((QData)((IData)((- (IData)(
                                                           (1U 
                                                            & (IData)(
                                                                      (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                                                                       >> 0x1fU))))))) 
                                << 0x20U) | (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data)));
                    } else if ((5U == (IData)(vlTOPp->SimTop__DOT__exe_s1))) {
                        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__sraw 
                            = (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1);
                        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__sra_imm_w 
                            = (0x1fU & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2));
                        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__sraw 
                            = VL_SHIFTRS_III(32,32,5, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__sraw, (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__sra_imm_w));
                        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                            = (((QData)((IData)((- (IData)(
                                                           (1U 
                                                            & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__sraw 
                                                               >> 0x1fU)))))) 
                                << 0x20U) | (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__sraw)));
                    }
                } else if ((0U == (IData)(vlTOPp->SimTop__DOT__exe_s1))) {
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                        = (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                           + vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2);
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                        = (((QData)((IData)((- (IData)(
                                                       (1U 
                                                        & (IData)(
                                                                  (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                                                                   >> 0x1fU))))))) 
                            << 0x20U) | (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data)));
                } else if ((1U == (IData)(vlTOPp->SimTop__DOT__exe_s1))) {
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__sll_imm 
                        = (0x1fU & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2));
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__sllw 
                        = (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                           << (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__sll_imm));
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                        = (((QData)((IData)((- (IData)(
                                                       (1U 
                                                        & (IData)(
                                                                  (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__sllw 
                                                                   >> 0x1fU))))))) 
                            << 0x20U) | (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__sllw)));
                } else if ((5U == (IData)(vlTOPp->SimTop__DOT__exe_s1))) {
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__srl_imm_w 
                        = (0x1fU & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2));
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__srlw 
                        = (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1);
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__srlw 
                        = (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__srlw 
                           >> (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__srl_imm_w));
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                        = (((QData)((IData)((- (IData)(
                                                       (1U 
                                                        & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__srlw 
                                                           >> 0x1fU)))))) 
                            << 0x20U) | (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__srlw)));
                }
            } else if ((0x7bU == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                vlTOPp->io_uart_out_ch = (0xffU & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data));
            } else if ((0x73U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_data 
                    = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_t;
            }
        }
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc_add = 0ULL;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_fetched) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc_add = 0ULL;
        if ((0x33U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
            if ((0x13U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                if ((0x63U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__imm1 
                        = (1U & ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_b_imm) 
                                 >> 6U));
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__imm5 
                        = (0x3fU & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_b_imm));
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__imm3 
                        = (1U & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_b_imm_b));
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__imm6 
                        = (0xfU & ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_b_imm_b) 
                                   >> 1U));
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__exe_b_imm_b_b 
                        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__imm1) 
                            << 0xbU) | (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__imm3) 
                                         << 0xaU) | 
                                        (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__imm5) 
                                          << 4U) | (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__imm6))));
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__exe_b_imm_b_b_b 
                        = ((0xfffffffffffff000ULL & 
                            ((- (QData)((IData)((1U 
                                                 & ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__exe_b_imm_b_b) 
                                                    >> 0xbU))))) 
                             << 0xcU)) | (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__exe_b_imm_b_b)));
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__exe_b_imm_b_b_b 
                        = (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__exe_b_imm_b_b_b 
                           << 1U);
                    if ((4U & (IData)(vlTOPp->SimTop__DOT__exe_s1))) {
                        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc_add 
                            = ((2U & (IData)(vlTOPp->SimTop__DOT__exe_s1))
                                ? ((1U & (IData)(vlTOPp->SimTop__DOT__exe_s1))
                                    ? ((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                                        >= vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2)
                                        ? (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__exe_b_imm_b_b_b 
                                           + vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc)
                                        : (4ULL + vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc))
                                    : ((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                                        < vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2)
                                        ? (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__exe_b_imm_b_b_b 
                                           + vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc)
                                        : (4ULL + vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc)))
                                : ((1U & (IData)(vlTOPp->SimTop__DOT__exe_s1))
                                    ? (VL_GTES_IQQ(1,64,64, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2)
                                        ? (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__exe_b_imm_b_b_b 
                                           + vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc)
                                        : (4ULL + vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc))
                                    : (VL_LTS_IQQ(1,64,64, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2)
                                        ? (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__exe_b_imm_b_b_b 
                                           + vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc)
                                        : (4ULL + vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc))));
                    } else if ((1U & (~ ((IData)(vlTOPp->SimTop__DOT__exe_s1) 
                                         >> 1U)))) {
                        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc_add 
                            = ((1U & (IData)(vlTOPp->SimTop__DOT__exe_s1))
                                ? ((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                                    != vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2)
                                    ? (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__exe_b_imm_b_b_b 
                                       + vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc)
                                    : (4ULL + vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc))
                                : ((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                                    == vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2)
                                    ? (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__exe_b_imm_b_b_b 
                                       + vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc)
                                    : (4ULL + vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc)));
                    }
                } else if ((0x37U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                    if ((0x17U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                        if ((0x6fU == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__imm1 
                                = (1U & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_j_imm 
                                         >> 8U));
                            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__imm2 
                                = (0xffU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_j_imm);
                            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__imm3 
                                = (1U & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_j_imm 
                                         >> 0x13U));
                            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__imm4 
                                = (0x3ffU & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_j_imm 
                                             >> 9U));
                            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__jal_imm 
                                = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__imm3) 
                                    << 0x13U) | (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__imm2) 
                                                  << 0xbU) 
                                                 | (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__imm1) 
                                                     << 0xaU) 
                                                    | (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__imm4))));
                            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__jal_imm 
                                = (0xfffffU & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__jal_imm 
                                               << 1U));
                            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc_add 
                                = (((0xfffffffffff00000ULL 
                                     & ((- (QData)((IData)(
                                                           (1U 
                                                            & (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__jal_imm 
                                                               >> 0x13U))))) 
                                        << 0x14U)) 
                                    | (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_exe_stage__DOT__jal_imm))) 
                                   + vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc);
                        } else if ((0x67U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc_add 
                                = (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                                   + ((0xfffffffffffff000ULL 
                                       & ((- (QData)((IData)(
                                                             (1U 
                                                              & ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_j_imm_j) 
                                                                 >> 0xbU))))) 
                                          << 0xcU)) 
                                      | (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_j_imm_j))));
                            if ((1U & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc_add))) {
                                vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc_add 
                                    = (0xfffffffffffffffeULL 
                                       & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc_add);
                            }
                        }
                    }
                }
            }
        }
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc_write = 0U;
    } else if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_fetched) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc_write = 0U;
        if ((0x33U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
            if ((0x13U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                if ((0x63U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                    if ((4U & (IData)(vlTOPp->SimTop__DOT__exe_s1))) {
                        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc_write 
                            = (1U & ((2U & (IData)(vlTOPp->SimTop__DOT__exe_s1))
                                      ? ((1U & (IData)(vlTOPp->SimTop__DOT__exe_s1))
                                          ? ((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                                              >= vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2)
                                              ? 1U : 0U)
                                          : ((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                                              < vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2)
                                              ? 1U : 0U))
                                      : ((1U & (IData)(vlTOPp->SimTop__DOT__exe_s1))
                                          ? (VL_GTES_IQQ(1,64,64, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2)
                                              ? 1U : 0U)
                                          : (VL_LTS_IQQ(1,64,64, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1, vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2)
                                              ? 1U : 0U))));
                    } else if ((1U & (~ ((IData)(vlTOPp->SimTop__DOT__exe_s1) 
                                         >> 1U)))) {
                        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc_write 
                            = (1U & ((1U & (IData)(vlTOPp->SimTop__DOT__exe_s1))
                                      ? ((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                                          != vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2)
                                          ? 1U : 0U)
                                      : ((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op1 
                                          == vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_op2)
                                          ? 1U : 0U)));
                    }
                } else if ((0x37U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                    if ((0x17U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                        if ((0x6fU == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc_write = 1U;
                        } else if ((0x67U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_opcode))) {
                            vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc_write = 1U;
                        }
                    }
                }
            }
        }
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_exe_bubble = 0U;
    }
    if (vlTOPp->reset) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr_skip = 0U;
    } else if (((0x73U == (0x7fU & vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_inst))
                 ? 1U : 0U)) {
        if ((1U & (~ ((((((((0U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr)) 
                            | (0x300U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr))) 
                           | (0x341U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr))) 
                          | (0x305U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr))) 
                         | (0x342U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr))) 
                        | (0x344U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr))) 
                       | (0x304U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr))) 
                      | (0xf14U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr)))))) {
            if ((0x340U != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr))) {
                if ((0xb00U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr))) {
                    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr_skip = 1U;
                }
            }
        }
    } else {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__id_csr_skip = 0U;
    }
    if (vlTOPp->reset) {
        vlTOPp->io_memAXI_0_ar_bits_id = 0U;
        vlTOPp->SimTop__DOT__axi_read_addr = 0ULL;
    } else {
        vlTOPp->io_memAXI_0_ar_bits_id = ((1U & (((3U 
                                                   == 
                                                   (0x7fU 
                                                    & vlTOPp->SimTop__DOT__if_inst))
                                                   ? 1U
                                                   : 0U) 
                                                 & (~ 
                                                    ((1U 
                                                      == (IData)(vlTOPp->SimTop__DOT__axi_r_id_o))
                                                      ? 1U
                                                      : 0U))))
                                           ? 1U : 2U);
        vlTOPp->SimTop__DOT__axi_read_addr = ((1U & 
                                               (((3U 
                                                  == 
                                                  (0x7fU 
                                                   & vlTOPp->SimTop__DOT__if_inst))
                                                  ? 1U
                                                  : 0U) 
                                                & (~ 
                                                   ((1U 
                                                     == (IData)(vlTOPp->SimTop__DOT__axi_r_id_o))
                                                     ? 1U
                                                     : 0U))))
                                               ? (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_op1 
                                                  + 
                                                  ((0xfffffffffffff000ULL 
                                                    & ((- (QData)((IData)(
                                                                          (1U 
                                                                           & ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_I_imm) 
                                                                              >> 0xbU))))) 
                                                       << 0xcU)) 
                                                   | (QData)((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mem_I_imm))))
                                               : vlTOPp->SimTop__DOT__if_addr);
    }
    vlTOPp->SimTop__DOT__r_hs = ((2U == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__r_state)) 
                                 & (IData)(vlTOPp->io_memAXI_0_r_valid));
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mcause_data 
        = ((IData)(vlTOPp->reset) ? 0ULL : ((((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__mtime 
                                               >= vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__mtimecmp) 
                                              & (IData)(
                                                        (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mie 
                                                         >> 7U))) 
                                             & (IData)(
                                                       (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__mstatus 
                                                        >> 3U)))
                                             ? 0x8000000000000007ULL
                                             : 0xbULL));
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__interrupt 
        = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__wb_stage)
            ? (1U & ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__clock_interrupt)
                      ? (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__clock_interrupt)
                      : (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_wb_stage__DOT__ysyx_210448_CSR__DOT__interrupt_ready1)))
            : 0U);
    if (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__csr_pc_write) {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__pc_add 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__csr_pc_add;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__pc_write 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__csr_pc_write;
    } else {
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__pc_add 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc_add;
        vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__pc_write 
            = vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc_write;
    }
    vlTOPp->SimTop__DOT__axi_read_valid = (((0U == vlTOPp->SimTop__DOT__if_inst) 
                                            & (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__exe_pc_write))
                                            ? 0U : 
                                           (((3U == 
                                              (0x7fU 
                                               & vlTOPp->SimTop__DOT__if_inst))
                                              ? 1U : 0U)
                                             ? (1U 
                                                & (IData)(vlTOPp->SimTop__DOT__mem_read))
                                             : 1U));
    vlTOPp->io_memAXI_0_ar_bits_addr = (0xfffffffffffffff8ULL 
                                        & vlTOPp->SimTop__DOT__axi_read_addr);
    __Vtemp56[0U] = ((((0xffU & (- (IData)((0U == (IData)(vlTOPp->SimTop__DOT__axi_size))))) 
                       | (0xffffU & (- (IData)((1U 
                                                == (IData)(vlTOPp->SimTop__DOT__axi_size)))))) 
                      | (- (IData)((2U == (IData)(vlTOPp->SimTop__DOT__axi_size))))) 
                     | (- (IData)((3U == (IData)(vlTOPp->SimTop__DOT__axi_size)))));
    __Vtemp56[1U] = (- (IData)((3U == (IData)(vlTOPp->SimTop__DOT__axi_size))));
    __Vtemp56[2U] = 0U;
    __Vtemp56[3U] = 0U;
    VL_SHIFTL_WWI(128,128,6, __Vtemp57, __Vtemp56, 
                  (0x38U & ((IData)(vlTOPp->SimTop__DOT__axi_read_addr) 
                            << 3U)));
    vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__mask[0U] 
        = __Vtemp57[0U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__mask[1U] 
        = __Vtemp57[1U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__mask[2U] 
        = __Vtemp57[2U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__mask[3U] 
        = __Vtemp57[3U];
    vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__addr_end 
        = (0xfU & ((7U & (IData)(vlTOPp->SimTop__DOT__axi_read_addr)) 
                   + (((1U & (- (IData)((1U == (IData)(vlTOPp->SimTop__DOT__axi_size))))) 
                       | (3U & (- (IData)((2U == (IData)(vlTOPp->SimTop__DOT__axi_size)))))) 
                      | (7U & (- (IData)((3U == (IData)(vlTOPp->SimTop__DOT__axi_size))))))));
    vlTOPp->SimTop__DOT__mtimecmp_open = ((((0x2004000ULL 
                                             == (0xfffffffffffffff8ULL 
                                                 & vlTOPp->SimTop__DOT__axi_read_addr)) 
                                            & ((1U 
                                                == (IData)(vlTOPp->io_memAXI_0_r_bits_id)) 
                                               & (IData)(vlTOPp->SimTop__DOT__r_hs))) 
                                           | ((0x2004000ULL 
                                               == (0xfffffffffffffff8ULL 
                                                   & vlTOPp->SimTop__DOT__axi_write_addr)) 
                                              & ((0x23U 
                                                  == 
                                                  (0x7fU 
                                                   & vlTOPp->SimTop__DOT__if_inst))
                                                  ? 1U
                                                  : 0U)))
                                           ? 1U : 0U);
    vlTOPp->SimTop__DOT__mtime_open = ((((0x200bff8ULL 
                                          == (0xfffffffffffffff8ULL 
                                              & vlTOPp->SimTop__DOT__axi_read_addr)) 
                                         & ((1U == (IData)(vlTOPp->io_memAXI_0_r_bits_id)) 
                                            & (IData)(vlTOPp->SimTop__DOT__r_hs))) 
                                        | ((0x200bff8ULL 
                                            == (0xfffffffffffffff8ULL 
                                                & vlTOPp->SimTop__DOT__axi_write_addr)) 
                                           & ((0x23U 
                                               == (0x7fU 
                                                   & vlTOPp->SimTop__DOT__if_inst))
                                               ? 1U
                                               : 0U)))
                                        ? 1U : 0U);
    vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__r_done 
        = ((IData)(vlTOPp->SimTop__DOT__r_hs) & (IData)(vlTOPp->io_memAXI_0_r_bits_last));
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__ysyx_210448_if_stage__DOT__if_inst_data 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__pc_write) 
            & (0U != vlTOPp->SimTop__DOT__if_inst))
            ? 0ULL : ((2U == (IData)(vlTOPp->SimTop__DOT__axi_r_id_o))
                       ? vlTOPp->SimTop__DOT__axi_data_read
                       : 0ULL));
    vlTOPp->SimTop__DOT__ar_valid = ((IData)(vlTOPp->SimTop__DOT__axi_read_valid)
                                      ? (IData)((1U 
                                                 == (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__r_state)))
                                      : 0U);
    vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__axi_r_data_l 
        = ((vlTOPp->io_memAXI_0_r_bits_data[0U] & (
                                                   ((QData)((IData)(
                                                                    vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__mask[1U])) 
                                                    << 0x20U) 
                                                   | (QData)((IData)(
                                                                     vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__mask[0U])))) 
           >> (0x38U & ((IData)(vlTOPp->SimTop__DOT__axi_read_addr) 
                        << 3U)));
    vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__axi_len 
        = ((0U == (7U & (IData)(vlTOPp->SimTop__DOT__axi_read_addr)))
            ? 0U : (1U & ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__addr_end) 
                          >> 3U)));
    vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__rw_ready_en 
        = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__r_done) 
           | (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__rw_ready));
    vlTOPp->io_memAXI_0_ar_valid = vlTOPp->SimTop__DOT__ar_valid;
    vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__ar_hs 
        = ((IData)(vlTOPp->io_memAXI_0_ar_ready) & (IData)(vlTOPp->SimTop__DOT__ar_valid));
    vlTOPp->io_memAXI_0_ar_bits_len = vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__axi_len;
    vlTOPp->io_memAXI_0_aw_bits_len = vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__axi_len;
    vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__len_incr_en 
        = (((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__len) 
            != (IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__axi_len)) 
           & ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_axi_rw__DOT__w_hs) 
              | (IData)(vlTOPp->SimTop__DOT__r_hs)));
}

VL_INLINE_OPT void VSimTop::_multiclk__TOP__8(VSimTop__Syms* __restrict vlSymsp) {
    VL_DEBUG_IF(VL_DBG_MSGF("+    VSimTop::_multiclk__TOP__8\n"); );
    VSimTop* const __restrict vlTOPp VL_ATTR_UNUSED = vlSymsp->TOPp;
    // Body
    vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__inst_valid 
        = ((IData)(vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__interrupt)
            ? 0U : (1U & ((0U != vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_inst) 
                          & ((vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_pc 
                              != vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cmt_pc) 
                             | (vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__wb_inst 
                                != vlTOPp->SimTop__DOT__ysyx_210448_u_cpu__DOT__cmt_inst)))));
}

void VSimTop::_eval(VSimTop__Syms* __restrict vlSymsp) {
    VL_DEBUG_IF(VL_DBG_MSGF("+    VSimTop::_eval\n"); );
    VSimTop* const __restrict vlTOPp VL_ATTR_UNUSED = vlSymsp->TOPp;
    // Body
    vlTOPp->_combo__TOP__3(vlSymsp);
    vlTOPp->__Vm_traceActivity[1U] = 1U;
    if (((IData)(vlTOPp->clock) & (~ (IData)(vlTOPp->__Vclklast__TOP__clock)))) {
        vlTOPp->_sequent__TOP__4(vlSymsp);
        vlTOPp->__Vm_traceActivity[2U] = 1U;
    }
    if (((~ (IData)(vlTOPp->clock)) & (IData)(vlTOPp->__Vclklast__TOP__clock))) {
        vlTOPp->_sequent__TOP__5(vlSymsp);
        vlTOPp->__Vm_traceActivity[3U] = 1U;
    }
    vlTOPp->_combo__TOP__7(vlSymsp);
    if (((IData)(vlTOPp->clock) ^ (IData)(vlTOPp->__Vclklast__TOP__clock))) {
        vlTOPp->_multiclk__TOP__8(vlSymsp);
    }
    // Final
    vlTOPp->__Vclklast__TOP__clock = vlTOPp->clock;
}

VL_INLINE_OPT QData VSimTop::_change_request(VSimTop__Syms* __restrict vlSymsp) {
    VL_DEBUG_IF(VL_DBG_MSGF("+    VSimTop::_change_request\n"); );
    VSimTop* const __restrict vlTOPp VL_ATTR_UNUSED = vlSymsp->TOPp;
    // Body
    return (vlTOPp->_change_request_1(vlSymsp));
}

VL_INLINE_OPT QData VSimTop::_change_request_1(VSimTop__Syms* __restrict vlSymsp) {
    VL_DEBUG_IF(VL_DBG_MSGF("+    VSimTop::_change_request_1\n"); );
    VSimTop* const __restrict vlTOPp VL_ATTR_UNUSED = vlSymsp->TOPp;
    // Body
    // Change detection
    QData __req = false;  // Logically a bool
    return __req;
}

#ifdef VL_DEBUG
void VSimTop::_eval_debug_assertions() {
    VL_DEBUG_IF(VL_DBG_MSGF("+    VSimTop::_eval_debug_assertions\n"); );
    // Body
    if (VL_UNLIKELY((clock & 0xfeU))) {
        Verilated::overWidthError("clock");}
    if (VL_UNLIKELY((reset & 0xfeU))) {
        Verilated::overWidthError("reset");}
    if (VL_UNLIKELY((io_perfInfo_clean & 0xfeU))) {
        Verilated::overWidthError("io_perfInfo_clean");}
    if (VL_UNLIKELY((io_perfInfo_dump & 0xfeU))) {
        Verilated::overWidthError("io_perfInfo_dump");}
    if (VL_UNLIKELY((io_memAXI_0_aw_ready & 0xfeU))) {
        Verilated::overWidthError("io_memAXI_0_aw_ready");}
    if (VL_UNLIKELY((io_memAXI_0_w_ready & 0xfeU))) {
        Verilated::overWidthError("io_memAXI_0_w_ready");}
    if (VL_UNLIKELY((io_memAXI_0_b_valid & 0xfeU))) {
        Verilated::overWidthError("io_memAXI_0_b_valid");}
    if (VL_UNLIKELY((io_memAXI_0_b_bits_resp & 0xfcU))) {
        Verilated::overWidthError("io_memAXI_0_b_bits_resp");}
    if (VL_UNLIKELY((io_memAXI_0_b_bits_id & 0xf0U))) {
        Verilated::overWidthError("io_memAXI_0_b_bits_id");}
    if (VL_UNLIKELY((io_memAXI_0_b_bits_user & 0xfeU))) {
        Verilated::overWidthError("io_memAXI_0_b_bits_user");}
    if (VL_UNLIKELY((io_memAXI_0_ar_ready & 0xfeU))) {
        Verilated::overWidthError("io_memAXI_0_ar_ready");}
    if (VL_UNLIKELY((io_memAXI_0_r_valid & 0xfeU))) {
        Verilated::overWidthError("io_memAXI_0_r_valid");}
    if (VL_UNLIKELY((io_memAXI_0_r_bits_resp & 0xfcU))) {
        Verilated::overWidthError("io_memAXI_0_r_bits_resp");}
    if (VL_UNLIKELY((io_memAXI_0_r_bits_last & 0xfeU))) {
        Verilated::overWidthError("io_memAXI_0_r_bits_last");}
    if (VL_UNLIKELY((io_memAXI_0_r_bits_id & 0xf0U))) {
        Verilated::overWidthError("io_memAXI_0_r_bits_id");}
    if (VL_UNLIKELY((io_memAXI_0_r_bits_user & 0xfeU))) {
        Verilated::overWidthError("io_memAXI_0_r_bits_user");}
}
#endif  // VL_DEBUG
